this.vtip = function () {
    this.xOffset = 20;
    this.yOffset = -35;
    $(".vtip").unbind().hover(function (a) {
        this.t = this.title;
        this.title = "";
        this.top = (a.pageY + yOffset);
        this.left = (a.pageX + xOffset);
        $("body").append('<p id="vtip">' + this.t + "</p>");
        $("p#vtip #vtipArrow").attr("src", "images/vtip_arrow.png");
        $("p#vtip").css("top", this.top + "px").css("left", this.left + "px").fadeIn("slow");
        $("p#vtip").css("-moz-border-radius", "5px");
        $("p#vtip").css("-webkit-border-radius", "5px")
    }, function () {
        this.title = this.t;
        $("p#vtip").fadeOut("slow").remove()
    }).mousemove(function (a) {
        this.top = (a.pageY + yOffset);
        this.left = (a.pageX + xOffset);
        $("p#vtip").css("top", this.top + "px").css("left", this.left + "px")
    })
};
jQuery(document).ready(function (a) {
    vtip()
});
jQuery.easing.jswing = jQuery.easing.swing;
jQuery.extend(jQuery.easing, {
    def: "easeOutQuad",
    swing: function (e, f, a, h, g) {
        return jQuery.easing[jQuery.easing.def](e, f, a, h, g)
    },
    easeInQuad: function (e, f, a, h, g) {
        return h * (f /= g) * f + a
    },
    easeOutQuad: function (e, f, a, h, g) {
        return -h * (f /= g) * (f - 2) + a
    },
    easeInOutQuad: function (e, f, a, h, g) {
        if ((f /= g / 2) < 1) {
            return h / 2 * f * f + a
        }
        return -h / 2 * ((--f) * (f - 2) - 1) + a
    },
    easeInCubic: function (e, f, a, h, g) {
        return h * (f /= g) * f * f + a
    },
    easeOutCubic: function (e, f, a, h, g) {
        return h * ((f = f / g - 1) * f * f + 1) + a
    },
    easeInOutCubic: function (e, f, a, h, g) {
        if ((f /= g / 2) < 1) {
            return h / 2 * f * f * f + a
        }
        return h / 2 * ((f -= 2) * f * f + 2) + a
    },
    easeInQuart: function (e, f, a, h, g) {
        return h * (f /= g) * f * f * f + a
    },
    easeOutQuart: function (e, f, a, h, g) {
        return -h * ((f = f / g - 1) * f * f * f - 1) + a
    },
    easeInOutQuart: function (e, f, a, h, g) {
        if ((f /= g / 2) < 1) {
            return h / 2 * f * f * f * f + a
        }
        return -h / 2 * ((f -= 2) * f * f * f - 2) + a
    },
    easeInQuint: function (e, f, a, h, g) {
        return h * (f /= g) * f * f * f * f + a
    },
    easeOutQuint: function (e, f, a, h, g) {
        return h * ((f = f / g - 1) * f * f * f * f + 1) + a
    },
    easeInOutQuint: function (e, f, a, h, g) {
        if ((f /= g / 2) < 1) {
            return h / 2 * f * f * f * f * f + a
        }
        return h / 2 * ((f -= 2) * f * f * f * f + 2) + a
    },
    easeInSine: function (e, f, a, h, g) {
        return -h * Math.cos(f / g * (Math.PI / 2)) + h + a
    },
    easeOutSine: function (e, f, a, h, g) {
        return h * Math.sin(f / g * (Math.PI / 2)) + a
    },
    easeInOutSine: function (e, f, a, h, g) {
        return -h / 2 * (Math.cos(Math.PI * f / g) - 1) + a
    },
    easeInExpo: function (e, f, a, h, g) {
        return (f == 0) ? a : h * Math.pow(2, 10 * (f / g - 1)) + a
    },
    easeOutExpo: function (e, f, a, h, g) {
        return (f == g) ? a + h : h * (-Math.pow(2, -10 * f / g) + 1) + a
    },
    easeInOutExpo: function (e, f, a, h, g) {
        if (f == 0) {
            return a
        }
        if (f == g) {
            return a + h
        }
        if ((f /= g / 2) < 1) {
            return h / 2 * Math.pow(2, 10 * (f - 1)) + a
        }
        return h / 2 * (-Math.pow(2, -10 * --f) + 2) + a
    },
    easeInCirc: function (e, f, a, h, g) {
        return -h * (Math.sqrt(1 - (f /= g) * f) - 1) + a
    },
    easeOutCirc: function (e, f, a, h, g) {
        return h * Math.sqrt(1 - (f = f / g - 1) * f) + a
    },
    easeInOutCirc: function (e, f, a, h, g) {
        if ((f /= g / 2) < 1) {
            return -h / 2 * (Math.sqrt(1 - f * f) - 1) + a
        }
        return h / 2 * (Math.sqrt(1 - (f -= 2) * f) + 1) + a
    },
    easeInElastic: function (f, h, e, l, k) {
        var i = 1.70158;
        var j = 0;
        var g = l;
        if (h == 0) {
            return e
        }
        if ((h /= k) == 1) {
            return e + l
        }
        if (!j) {
            j = k * 0.3
        }
        if (g < Math.abs(l)) {
            g = l;
            var i = j / 4
        } else {
            var i = j / (2 * Math.PI) * Math.asin(l / g)
        }
        return -(g * Math.pow(2, 10 * (h -= 1)) * Math.sin((h * k - i) * (2 * Math.PI) / j)) + e
    },
    easeOutElastic: function (f, h, e, l, k) {
        var i = 1.70158;
        var j = 0;
        var g = l;
        if (h == 0) {
            return e
        }
        if ((h /= k) == 1) {
            return e + l
        }
        if (!j) {
            j = k * 0.3
        }
        if (g < Math.abs(l)) {
            g = l;
            var i = j / 4
        } else {
            var i = j / (2 * Math.PI) * Math.asin(l / g)
        }
        return g * Math.pow(2, -10 * h) * Math.sin((h * k - i) * (2 * Math.PI) / j) + l + e
    },
    easeInOutElastic: function (f, h, e, l, k) {
        var i = 1.70158;
        var j = 0;
        var g = l;
        if (h == 0) {
            return e
        }
        if ((h /= k / 2) == 2) {
            return e + l
        }
        if (!j) {
            j = k * (0.3 * 1.5)
        }
        if (g < Math.abs(l)) {
            g = l;
            var i = j / 4
        } else {
            var i = j / (2 * Math.PI) * Math.asin(l / g)
        }
        if (h < 1) {
            return -0.5 * (g * Math.pow(2, 10 * (h -= 1)) * Math.sin((h * k - i) * (2 * Math.PI) / j)) + e
        }
        return g * Math.pow(2, -10 * (h -= 1)) * Math.sin((h * k - i) * (2 * Math.PI) / j) * 0.5 + l + e
    },
    easeInBack: function (e, f, a, i, h, g) {
        if (g == undefined) {
            g = 1.70158
        }
        return i * (f /= h) * f * ((g + 1) * f - g) + a
    },
    easeOutBack: function (e, f, a, i, h, g) {
        if (g == undefined) {
            g = 1.70158
        }
        return i * ((f = f / h - 1) * f * ((g + 1) * f + g) + 1) + a
    },
    easeInOutBack: function (e, f, a, i, h, g) {
        if (g == undefined) {
            g = 1.70158
        }
        if ((f /= h / 2) < 1) {
            return i / 2 * (f * f * (((g *= (1.525)) + 1) * f - g)) + a
        }
        return i / 2 * ((f -= 2) * f * (((g *= (1.525)) + 1) * f + g) + 2) + a
    },
    easeInBounce: function (e, f, a, h, g) {
        return h - jQuery.easing.easeOutBounce(e, g - f, 0, h, g) + a
    },
    easeOutBounce: function (e, f, a, h, g) {
        if ((f /= g) < (1 / 2.75)) {
            return h * (7.5625 * f * f) + a
        } else {
            if (f < (2 / 2.75)) {
                return h * (7.5625 * (f -= (1.5 / 2.75)) * f + 0.75) + a
            } else {
                if (f < (2.5 / 2.75)) {
                    return h * (7.5625 * (f -= (2.25 / 2.75)) * f + 0.9375) + a
                } else {
                    return h * (7.5625 * (f -= (2.625 / 2.75)) * f + 0.984375) + a
                }
            }
        }
    },
    easeInOutBounce: function (e, f, a, h, g) {
        if (f < g / 2) {
            return jQuery.easing.easeInBounce(e, f * 2, 0, h, g) * 0.5 + a
        }
        return jQuery.easing.easeOutBounce(e, f * 2 - g, 0, h, g) * 0.5 + h * 0.5 + a
    }
});
(function (i) {
    var l = "2.74";
    if (i.support == undefined) {
        i.support = {
            opacity: !(i.browser.msie)
        }
    }
    function a(q) {
        if (i.fn.cycle.debug) {
            f(q)
        }
    }
    function f() {
        if (window.console && window.console.log) {
            window.console.log("[cycle] " + Array.prototype.join.call(arguments, " "))
        }
    }
    i.fn.cycle = function (r, q) {
        var s = {
            s: this.selector,
            c: this.context
        };
        if (this.length === 0 && r != "stop") {
            if (!i.isReady && s.s) {
                f("DOM not ready, queuing slideshow");
                i(function () {
                    i(s.s, s.c).cycle(r, q)
                });
                return this
            }
            f("terminating; zero elements found by selector" + (i.isReady ? "" : " (DOM not ready)"));
            return this
        }
        return this.each(function () {
            var w = m(this, r, q);
            if (w === false) {
                return
            }
            if (this.cycleTimeout) {
                clearTimeout(this.cycleTimeout)
            }
            this.cycleTimeout = this.cyclePause = 0;
            var x = i(this);
            var y = w.slideExpr ? i(w.slideExpr, this) : x.children();
            var u = y.get();
            if (u.length < 2) {
                f("terminating; too few slides: " + u.length);
                return
            }
            var t = k(x, y, u, w, s);
            if (t === false) {
                return
            }
            var v = t.continuous ? 10 : h(t.currSlide, t.nextSlide, t, !t.rev);
            if (v) {
                v += (t.delay || 0);
                if (v < 10) {
                    v = 10
                }
                a("first timeout: " + v);
                this.cycleTimeout = setTimeout(function () {
                    e(u, t, 0, !t.rev)
                }, v)
            }
        })
    };

    function m(q, t, r) {
        if (q.cycleStop == undefined) {
            q.cycleStop = 0
        }
        if (t === undefined || t === null) {
            t = {}
        }
        if (t.constructor == String) {
            switch (t) {
            case "stop":
                q.cycleStop++;
                if (q.cycleTimeout) {
                    clearTimeout(q.cycleTimeout)
                }
                q.cycleTimeout = 0;
                i(q).removeData("cycle.opts");
                return false;
            case "toggle":
                q.cyclePause = (q.cyclePause === 1) ? 0 : 1;
                return false;
            case "pause":
                q.cyclePause = 1;
                return false;
            case "resume":
                q.cyclePause = 0;
                if (r === true) {
                    t = i(q).data("cycle.opts");
                    if (!t) {
                        f("options not found, can not resume");
                        return false
                    }
                    if (q.cycleTimeout) {
                        clearTimeout(q.cycleTimeout);
                        q.cycleTimeout = 0
                    }
                    e(t.elements, t, 1, 1)
                }
                return false;
            case "prev":
            case "next":
                var u = i(q).data("cycle.opts");
                if (!u) {
                    f('options not found, "prev/next" ignored');
                    return false
                }
                i.fn.cycle[t](u);
                return false;
            default:
                t = {
                    fx: t
                }
            }
            return t
        } else {
            if (t.constructor == Number) {
                var s = t;
                t = i(q).data("cycle.opts");
                if (!t) {
                    f("options not found, can not advance slide");
                    return false
                }
                if (s < 0 || s >= t.elements.length) {
                    f("invalid slide index: " + s);
                    return false
                }
                t.nextSlide = s;
                if (q.cycleTimeout) {
                    clearTimeout(q.cycleTimeout);
                    q.cycleTimeout = 0
                }
                if (typeof r == "string") {
                    t.oneTimeFx = r
                }
                e(t.elements, t, 1, s >= t.currSlide);
                return false
            }
        }
        return t
    }
    function b(q, r) {
        if (!i.support.opacity && r.cleartype && q.style.filter) {
            try {
                q.style.removeAttribute("filter")
            } catch (s) {}
        }
    }
    function k(y, J, u, t, E) {
        var C = i.extend({}, i.fn.cycle.defaults, t || {}, i.metadata ? y.metadata() : i.meta ? y.data() : {});
        if (C.autostop) {
            C.countdown = C.autostopCount || u.length
        }
        var r = y[0];
        y.data("cycle.opts", C);
        C.$cont = y;
        C.stopCount = r.cycleStop;
        C.elements = u;
        C.before = C.before ? [C.before] : [];
        C.after = C.after ? [C.after] : [];
        C.after.unshift(function () {
            C.busy = 0
        });
        if (!i.support.opacity && C.cleartype) {
            C.after.push(function () {
                b(this, C)
            })
        }
        if (C.continuous) {
            C.after.push(function () {
                e(u, C, 0, !C.rev)
            })
        }
        n(C);
        if (!i.support.opacity && C.cleartype && !C.cleartypeNoBg) {
            g(J)
        }
        if (y.css("position") == "static") {
            y.css("position", "relative")
        }
        if (C.width) {
            y.width(C.width)
        }
        if (C.height && C.height != "auto") {
            y.height(C.height)
        }
        if (C.startingSlide) {
            C.startingSlide = parseInt(C.startingSlide)
        }
        if (C.random) {
            C.randomMap = [];
            for (var H = 0; H < u.length; H++) {
                C.randomMap.push(H)
            }
            C.randomMap.sort(function (L, w) {
                return Math.random() - 0.5
            });
            C.randomIndex = 0;
            C.startingSlide = C.randomMap[0]
        } else {
            if (C.startingSlide >= u.length) {
                C.startingSlide = 0
            }
        }
        C.currSlide = C.startingSlide = C.startingSlide || 0;
        var x = C.startingSlide;
        J.css({
            position: "absolute",
            top: 0,
            left: 0
        }).show().each(function (w) {
            var L = x ? w >= x ? u.length - (w - x) : x - w : u.length - w;
            i(this).css("z-index", L)
        });
        i(u[x]).css("opacity", 1).show();
        b(u[x], C);
        if (C.fit && C.width) {
            J.width(C.width)
        }
        if (C.fit && C.height && C.height != "auto") {
            J.height(C.height)
        }
        var D = C.containerResize && !y.innerHeight();
        if (D) {
            var v = 0,
                B = 0;
            for (var F = 0; F < u.length; F++) {
                var q = i(u[F]),
                    K = q[0],
                    A = q.outerWidth(),
                    I = q.outerHeight();
                if (!A) {
                    A = K.offsetWidth
                }
                if (!I) {
                    I = K.offsetHeight
                }
                v = A > v ? A : v;
                B = I > B ? I : B
            }
            if (v > 0 && B > 0) {
                y.css({
                    width: v + "px",
                    height: B + "px"
                })
            }
        }
        if (C.pause) {
            y.hover(function () {
                this.cyclePause++
            }, function () {
                this.cyclePause--
            })
        }
        if (c(C) === false) {
            return false
        }
        var s = false;
        t.requeueAttempts = t.requeueAttempts || 0;
        J.each(function () {
            var N = i(this);
            this.cycleH = (C.fit && C.height) ? C.height : N.height();
            this.cycleW = (C.fit && C.width) ? C.width : N.width();
            if (N.is("img")) {
                var L = (i.browser.msie && this.cycleW == 28 && this.cycleH == 30 && !this.complete);
                var O = (i.browser.mozilla && this.cycleW == 34 && this.cycleH == 19 && !this.complete);
                var M = (i.browser.opera && ((this.cycleW == 42 && this.cycleH == 19) || (this.cycleW == 37 && this.cycleH == 17)) && !this.complete);
                var w = (this.cycleH == 0 && this.cycleW == 0 && !this.complete);
                if (L || O || M || w) {
                    if (E.s && C.requeueOnImageNotLoaded && ++t.requeueAttempts < 100) {
                        f(t.requeueAttempts, " - img slide not loaded, requeuing slideshow: ", this.src, this.cycleW, this.cycleH);
                        setTimeout(function () {
                            i(E.s, E.c).cycle(t)
                        }, C.requeueTimeout);
                        s = true;
                        return false
                    } else {
                        f("could not determine size of image: " + this.src, this.cycleW, this.cycleH)
                    }
                }
            }
            return true
        });
        if (s) {
            return false
        }
        C.cssBefore = C.cssBefore || {};
        C.animIn = C.animIn || {};
        C.animOut = C.animOut || {};
        J.not(":eq(" + x + ")").css(C.cssBefore);
        if (C.cssFirst) {
            i(J[x]).css(C.cssFirst)
        }
        if (C.timeout) {
            C.timeout = parseInt(C.timeout);
            if (C.speed.constructor == String) {
                C.speed = i.fx.speeds[C.speed] || parseInt(C.speed)
            }
            if (!C.sync) {
                C.speed = C.speed / 2
            }
            while ((C.timeout - C.speed) < 250) {
                C.timeout += C.speed
            }
        }
        if (C.easing) {
            C.easeIn = C.easeOut = C.easing
        }
        if (!C.speedIn) {
            C.speedIn = C.speed
        }
        if (!C.speedOut) {
            C.speedOut = C.speed
        }
        C.slideCount = u.length;
        C.currSlide = C.lastSlide = x;
        if (C.random) {
            C.nextSlide = C.currSlide;
            if (++C.randomIndex == u.length) {
                C.randomIndex = 0
            }
            C.nextSlide = C.randomMap[C.randomIndex]
        } else {
            C.nextSlide = C.startingSlide >= (u.length - 1) ? 0 : C.startingSlide + 1
        }
        if (!C.multiFx) {
            var G = i.fn.cycle.transitions[C.fx];
            if (i.isFunction(G)) {
                G(y, J, C)
            } else {
                if (C.fx != "custom" && !C.multiFx) {
                    f("unknown transition: " + C.fx, "; slideshow terminating");
                    return false
                }
            }
        }
        var z = J[x];
        if (C.before.length) {
            C.before[0].apply(z, [z, z, C, true])
        }
        if (C.after.length > 1) {
            C.after[1].apply(z, [z, z, C, true])
        }
        if (C.next) {
            i(C.next).bind(C.prevNextEvent, function () {
                return o(C, C.rev ? -1 : 1)
            })
        }
        if (C.prev) {
            i(C.prev).bind(C.prevNextEvent, function () {
                return o(C, C.rev ? 1 : -1)
            })
        }
        if (C.pager) {
            d(u, C)
        }
        j(C, u);
        return C
    }
    function n(q) {
        q.original = {
            before: [],
            after: []
        };
        q.original.cssBefore = i.extend({}, q.cssBefore);
        q.original.cssAfter = i.extend({}, q.cssAfter);
        q.original.animIn = i.extend({}, q.animIn);
        q.original.animOut = i.extend({}, q.animOut);
        i.each(q.before, function () {
            q.original.before.push(this)
        });
        i.each(q.after, function () {
            q.original.after.push(this)
        })
    }
    function c(w) {
        var u, s, r = i.fn.cycle.transitions;
        if (w.fx.indexOf(",") > 0) {
            w.multiFx = true;
            w.fxs = w.fx.replace(/\s*/g, "").split(",");
            for (u = 0; u < w.fxs.length; u++) {
                var v = w.fxs[u];
                s = r[v];
                if (!s || !r.hasOwnProperty(v) || !i.isFunction(s)) {
                    f("discarding unknown transition: ", v);
                    w.fxs.splice(u, 1);
                    u--
                }
            }
            if (!w.fxs.length) {
                f("No valid transitions named; slideshow terminating.");
                return false
            }
        } else {
            if (w.fx == "all") {
                w.multiFx = true;
                w.fxs = [];
                for (p in r) {
                    s = r[p];
                    if (r.hasOwnProperty(p) && i.isFunction(s)) {
                        w.fxs.push(p)
                    }
                }
            }
        }
        if (w.multiFx && w.randomizeEffects) {
            var t = Math.floor(Math.random() * 20) + 30;
            for (u = 0; u < t; u++) {
                var q = Math.floor(Math.random() * w.fxs.length);
                w.fxs.push(w.fxs.splice(q, 1)[0])
            }
            a("randomized fx sequence: ", w.fxs)
        }
        return true
    }
    function j(r, q) {
        r.addSlide = function (u, v) {
            var t = i(u),
                w = t[0];
            if (!r.autostopCount) {
                r.countdown++
            }
            q[v ? "unshift" : "push"](w);
            if (r.els) {
                r.els[v ? "unshift" : "push"](w)
            }
            r.slideCount = q.length;
            t.css("position", "absolute");
            t[v ? "prependTo" : "appendTo"](r.$cont);
            if (v) {
                r.currSlide++;
                r.nextSlide++
            }
            if (!i.support.opacity && r.cleartype && !r.cleartypeNoBg) {
                g(t)
            }
            if (r.fit && r.width) {
                t.width(r.width)
            }
            if (r.fit && r.height && r.height != "auto") {
                $slides.height(r.height)
            }
            w.cycleH = (r.fit && r.height) ? r.height : t.height();
            w.cycleW = (r.fit && r.width) ? r.width : t.width();
            t.css(r.cssBefore);
            if (r.pager) {
                i.fn.cycle.createPagerAnchor(q.length - 1, w, i(r.pager), q, r)
            }
            if (i.isFunction(r.onAddSlide)) {
                r.onAddSlide(t)
            } else {
                t.hide()
            }
        }
    }
    i.fn.cycle.resetState = function (r, q) {
        q = q || r.fx;
        r.before = [];
        r.after = [];
        r.cssBefore = i.extend({}, r.original.cssBefore);
        r.cssAfter = i.extend({}, r.original.cssAfter);
        r.animIn = i.extend({}, r.original.animIn);
        r.animOut = i.extend({}, r.original.animOut);
        r.fxFn = null;
        i.each(r.original.before, function () {
            r.before.push(this)
        });
        i.each(r.original.after, function () {
            r.after.push(this)
        });
        var s = i.fn.cycle.transitions[q];
        if (i.isFunction(s)) {
            s(r.$cont, i(r.elements), r)
        }
    };

    function e(x, q, w, y) {
        if (w && q.busy && q.manualTrump) {
            i(x).stop(true, true);
            q.busy = false
        }
        if (q.busy) {
            return
        }
        var u = q.$cont[0],
            A = x[q.currSlide],
            z = x[q.nextSlide];
        if (u.cycleStop != q.stopCount || u.cycleTimeout === 0 && !w) {
            return
        }
        if (!w && !u.cyclePause && ((q.autostop && (--q.countdown <= 0)) || (q.nowrap && !q.random && q.nextSlide < q.currSlide))) {
            if (q.end) {
                q.end(q)
            }
            return
        }
        if (w || !u.cyclePause) {
            var v = q.fx;
            A.cycleH = A.cycleH || i(A).height();
            A.cycleW = A.cycleW || i(A).width();
            z.cycleH = z.cycleH || i(z).height();
            z.cycleW = z.cycleW || i(z).width();
            if (q.multiFx) {
                if (q.lastFx == undefined || ++q.lastFx >= q.fxs.length) {
                    q.lastFx = 0
                }
                v = q.fxs[q.lastFx];
                q.currFx = v
            }
            if (q.oneTimeFx) {
                v = q.oneTimeFx;
                q.oneTimeFx = null
            }
            i.fn.cycle.resetState(q, v);
            if (q.before.length) {
                i.each(q.before, function (B, C) {
                    if (u.cycleStop != q.stopCount) {
                        return
                    }
                    C.apply(z, [A, z, q, y])
                })
            }
            var s = function () {
                    i.each(q.after, function (B, C) {
                        if (u.cycleStop != q.stopCount) {
                            return
                        }
                        C.apply(z, [A, z, q, y])
                    })
                };
            if (q.nextSlide != q.currSlide) {
                q.busy = 1;
                if (q.fxFn) {
                    q.fxFn(A, z, q, s, y)
                } else {
                    if (i.isFunction(i.fn.cycle[q.fx])) {
                        i.fn.cycle[q.fx](A, z, q, s)
                    } else {
                        i.fn.cycle.custom(A, z, q, s, w && q.fastOnEvent)
                    }
                }
            }
            q.lastSlide = q.currSlide;
            if (q.random) {
                q.currSlide = q.nextSlide;
                if (++q.randomIndex == x.length) {
                    q.randomIndex = 0
                }
                q.nextSlide = q.randomMap[q.randomIndex]
            } else {
                var t = (q.nextSlide + 1) == x.length;
                q.nextSlide = t ? 0 : q.nextSlide + 1;
                q.currSlide = t ? x.length - 1 : q.nextSlide - 1
            }
            if (q.pager) {
                i.fn.cycle.updateActivePagerLink(q.pager, q.currSlide)
            }
        }
        var r = 0;
        if (q.timeout && !q.continuous) {
            r = h(A, z, q, y)
        } else {
            if (q.continuous && u.cyclePause) {
                r = 10
            }
        }
        if (r > 0) {
            u.cycleTimeout = setTimeout(function () {
                e(x, q, 0, !q.rev)
            }, r)
        }
    }
    i.fn.cycle.updateActivePagerLink = function (q, r) {
        i(q).each(function () {
            i(this).find("a").removeClass("activeSlide").filter("a:eq(" + r + ")").addClass("activeSlide")
        })
    };

    function h(v, s, u, r) {
        if (u.timeoutFn) {
            var q = u.timeoutFn(v, s, u, r);
            while ((q - u.speed) < 250) {
                q += u.speed
            }
            a("calculated timeout: " + q + "; speed: " + u.speed);
            if (q !== false) {
                return q
            }
        }
        return u.timeout
    }
    i.fn.cycle.next = function (q) {
        o(q, q.rev ? -1 : 1)
    };
    i.fn.cycle.prev = function (q) {
        o(q, q.rev ? 1 : -1)
    };

    function o(r, u) {
        var q = r.elements;
        var t = r.$cont[0],
            s = t.cycleTimeout;
        if (s) {
            clearTimeout(s);
            t.cycleTimeout = 0
        }
        if (r.random && u < 0) {
            r.randomIndex--;
            if (--r.randomIndex == -2) {
                r.randomIndex = q.length - 2
            } else {
                if (r.randomIndex == -1) {
                    r.randomIndex = q.length - 1
                }
            }
            r.nextSlide = r.randomMap[r.randomIndex]
        } else {
            if (r.random) {
                if (++r.randomIndex == q.length) {
                    r.randomIndex = 0
                }
                r.nextSlide = r.randomMap[r.randomIndex]
            } else {
                r.nextSlide = r.currSlide + u;
                if (r.nextSlide < 0) {
                    if (r.nowrap) {
                        return false
                    }
                    r.nextSlide = q.length - 1
                } else {
                    if (r.nextSlide >= q.length) {
                        if (r.nowrap) {
                            return false
                        }
                        r.nextSlide = 0
                    }
                }
            }
        }
        if (i.isFunction(r.prevNextClick)) {
            r.prevNextClick(u > 0, r.nextSlide, q[r.nextSlide])
        }
        e(q, r, 1, u >= 0);
        return false
    }
    function d(r, s) {
        var q = i(s.pager);
        i.each(r, function (t, u) {
            i.fn.cycle.createPagerAnchor(t, u, q, r, s)
        });
        i.fn.cycle.updateActivePagerLink(s.pager, s.startingSlide)
    }
    i.fn.cycle.createPagerAnchor = function (w, s, y, v, q) {
        var z;
        if (i.isFunction(q.pagerAnchorBuilder)) {
            z = q.pagerAnchorBuilder(w, s)
        } else {
            var u = i(".item").eq(w).find(".nav a span").text();
            var r = i(".item").eq(w).find(".nav a").width();
            z = '<a href="#" id='+w+' class="nav-overlap" title="">' + w + "</a>"
            console.log(z);
        }
        if (!z) {
            return
        }
        var t = i(z);
        if (t.parents("body").length === 0) {
            var x = [];
            if (y.length > 1) {
                y.each(function () {
                    var A = t.clone(true);
                    i(this).append(A);
                    x.push(A[0])
                });
                t = i(x)
            } else {
                t.appendTo(y)
            }
        }
        t.bind(q.pagerEvent, function (C) {
            C.preventDefault();
            q.nextSlide = w;
            var B = q.$cont[0],
                A = B.cycleTimeout;
            if (A) {
                clearTimeout(A);
                B.cycleTimeout = 0
            }
            if (i.isFunction(q.pagerClick)) {
                q.pagerClick(q.nextSlide, v[q.nextSlide])
            }
            e(v, q, 1, q.currSlide < w);
            return false
        });
        if (q.pagerEvent != "click") {
            t.click(function () {
                return false
            })
        }
        if (q.pauseOnPagerHover) {
            t.hover(function () {
                q.$cont[0].cyclePause++
            }, function () {
                q.$cont[0].cyclePause--
            })
        }
    };
    i.fn.cycle.hopsFromLast = function (t, s) {
        var r, q = t.lastSlide,
            u = t.currSlide;
        if (s) {
            r = u > q ? u - q : t.slideCount - q
        } else {
            r = u < q ? q - u : q + t.slideCount - u
        }
        return r
    };

    function g(s) {
        function r(t) {
            t = parseInt(t).toString(16);
            return t.length < 2 ? "0" + t : t
        }
        function q(w) {
            for (; w && w.nodeName.toLowerCase() != "html"; w = w.parentNode) {
                var t = i.css(w, "background-color");
                if (t.indexOf("rgb") >= 0) {
                    var u = t.match(/\d+/g);
                    return "#" + r(u[0]) + r(u[1]) + r(u[2])
                }
                if (t && t != "transparent") {
                    return t
                }
            }
            return "#ffffff"
        }
        s.each(function () {
            i(this).css("background-color", q(this))
        })
    }
    i.fn.cycle.commonReset = function (v, t, u, r, s, q) {
        i(u.elements).not(v).hide();
        u.cssBefore.opacity = 1;
        u.cssBefore.display = "block";
        if (r !== false && t.cycleW > 0) {
            u.cssBefore.width = t.cycleW
        }
        if (s !== false && t.cycleH > 0) {
            u.cssBefore.height = t.cycleH
        }
        u.cssAfter = u.cssAfter || {};
        u.cssAfter.display = "none";
        i(v).css("zIndex", u.slideCount + (q === true ? 1 : 0));
        i(t).css("zIndex", u.slideCount + (q === true ? 0 : 1))
    };
    i.fn.cycle.custom = function (B, v, q, s, r) {
        var A = i(B),
            w = i(v);
        var t = q.speedIn,
            z = q.speedOut,
            u = q.easeIn,
            y = q.easeOut;
        w.css(q.cssBefore);
        if (r) {
            if (typeof r == "number") {
                t = z = r
            } else {
                t = z = 1
            }
            u = y = null
        }
        var x = function () {
                w.animate(q.animIn, t, u, s)
            };
        A.animate(q.animOut, z, y, function () {
            if (q.cssAfter) {
                A.css(q.cssAfter)
            }
            if (!q.sync) {
                x()
            }
        });
        if (q.sync) {
            x()
        }
    };
    i.fn.cycle.transitions = {
        fade: function (r, s, q) {
            s.not(":eq(" + q.currSlide + ")").css("opacity", 0);
            q.before.push(function (v, t, u) {
                i.fn.cycle.commonReset(v, t, u);
                u.cssBefore.opacity = 0
            });
            q.animIn = {
                opacity: 1
            };
            q.animOut = {
                opacity: 0
            };
            q.cssBefore = {
                top: 0,
                left: 0
            }
        }
    };
    i.fn.cycle.ver = function () {
        return l
    };
    i.fn.cycle.defaults = {
        fx: "fade",
        timeout: 4000,
        timeoutFn: null,
        continuous: 0,
        speed: 1000,
        speedIn: null,
        speedOut: null,
        next: null,
        prev: null,
        prevNextClick: null,
        prevNextEvent: "click",
        pager: null,
        pagerClick: null,
        pagerEvent: "click",
        pagerAnchorBuilder: null,
        before: null,
        after: null,
        end: null,
        easing: null,
        easeIn: null,
        easeOut: null,
        shuffle: {
            top: 50,
            left: 650
        },
        animIn: null,
        animOut: null,
        cssBefore: null,
        cssAfter: null,
        fxFn: null,
        height: "auto",
        startingSlide: 0,
        sync: 1,
        random: 0,
        fit: 0,
        containerResize: 1,
        pause: 0,
        pauseOnPagerHover: 0,
        autostop: 0,
        autostopCount: 0,
        delay: 300,
        slideExpr: null,
        cleartype: !i.support.opacity,
        cleartypeNoBg: false,
        nowrap: 0,
        fastOnEvent: 0,
        randomizeEffects: 1,
        rev: 1,
        manualTrump: false,
        requeueOnImageNotLoaded: true,
        requeueTimeout: 250
    }
})(jQuery);
(function (a) {
    a.fn.cycle.transitions.none = function (c, d, b) {
        b.fxFn = function (g, e, f, h) {
            a(e).show();
            a(g).hide();
            h()
        }
    };
    a.fn.cycle.transitions.scrollUp = function (d, e, c) {
        d.css("overflow", "hidden");
        c.before.push(a.fn.cycle.commonReset);
        var b = d.height();
        c.cssBefore = {
            top: b,
            left: 0
        };
        c.cssFirst = {
            top: 0
        };
        c.animIn = {
            top: 0
        };
        c.animOut = {
            top: -b
        }
    };
    a.fn.cycle.transitions.scrollDown = function (d, e, c) {
        d.css("overflow", "hidden");
        c.before.push(a.fn.cycle.commonReset);
        var b = d.height();
        c.cssFirst = {
            top: 0
        };
        c.cssBefore = {
            top: -b,
            left: 0
        };
        c.animIn = {
            top: 0
        };
        c.animOut = {
            top: b
        }
    };
    a.fn.cycle.transitions.scrollLeft = function (d, e, c) {
        d.css("overflow", "hidden");
        c.before.push(a.fn.cycle.commonReset);
        var b = d.width();
        c.cssFirst = {
            left: 0
        };
        c.cssBefore = {
            left: b,
            top: 0
        };
        c.animIn = {
            left: 0
        };
        c.animOut = {
            left: 0 - b
        }
    };
    a.fn.cycle.transitions.scrollRight = function (d, e, c) {
        d.css("overflow", "hidden");
        c.before.push(a.fn.cycle.commonReset);
        var b = d.width();
        c.cssFirst = {
            left: 0
        };
        c.cssBefore = {
            left: -b,
            top: 0
        };
        c.animIn = {
            left: 0
        };
        c.animOut = {
            left: b
        }
    };
    a.fn.cycle.transitions.scrollHorz = function (c, d, b) {
        c.css("overflow", "hidden").width();
        b.before.push(function (h, f, g, e) {
            a.fn.cycle.commonReset(h, f, g);
            g.cssBefore.left = e ? (f.cycleW - 1) : (1 - f.cycleW);
            g.animOut.left = e ? -h.cycleW : h.cycleW
        });
        b.cssFirst = {
            left: 0
        };
        b.cssBefore = {
            top: 0
        };
        b.animIn = {
            left: 0
        };
        b.animOut = {
            top: 0
        }
    };
    a.fn.cycle.transitions.scrollVert = function (c, d, b) {
        c.css("overflow", "hidden");
        b.before.push(function (h, f, g, e) {
            a.fn.cycle.commonReset(h, f, g);
            g.cssBefore.top = e ? (1 - f.cycleH) : (f.cycleH - 1);
            g.animOut.top = e ? h.cycleH : -h.cycleH
        });
        b.cssFirst = {
            top: 0
        };
        b.cssBefore = {
            left: 0
        };
        b.animIn = {
            top: 0
        };
        b.animOut = {
            left: 0
        }
    };
    a.fn.cycle.transitions.slideX = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a(f.elements).not(g).hide();
            a.fn.cycle.commonReset(g, e, f, false, true);
            f.animIn.width = e.cycleW
        });
        b.cssBefore = {
            left: 0,
            top: 0,
            width: 0
        };
        b.animIn = {
            width: "show"
        };
        b.animOut = {
            width: 0
        }
    };
    a.fn.cycle.transitions.slideY = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a(f.elements).not(g).hide();
            a.fn.cycle.commonReset(g, e, f, true, false);
            f.animIn.height = e.cycleH
        });
        b.cssBefore = {
            left: 0,
            top: 0,
            height: 0
        };
        b.animIn = {
            height: "show"
        };
        b.animOut = {
            height: 0
        }
    };
    a.fn.cycle.transitions.shuffle = function (e, f, d) {
        a(".item .nav span img").stop().fadeTo("normal", 1).show();
        a(".item .nav span").removeClass("current");
        var c, b = e.css("overflow", "visible").width();
        f.css({
            left: 0,
            top: 0
        });
        d.before.push(function (i, g, h) {});
        if (!d.speedAdjusted) {
            d.speed = d.speed / 2;
            d.speedAdjusted = true
        }
        d.random = 0;
        d.shuffle = d.shuffle || {
            left: -b,
            top: 15
        };
        d.els = [];
        for (c = 0; c < f.length; c++) {
            d.els.push(f[c])
        }
        for (c = 0; c < d.currSlide; c++) {
            d.els.push(d.els.shift())
        }
        d.fxFn = function (m, j, l, g, i) {
            var h = a(j);
            a(j).css(l.cssBefore);
            var k = l.slideCount;
            h.animate(l.shuffle, l.speedIn, l.easeIn, function () {
                var n = a.fn.cycle.hopsFromLast(l, i);
                for (var o = 0; o < n; o++) {
                    i ? l.els.push(l.els.shift()) : l.els.unshift(l.els.pop())
                }
                var v = a(m).css("z-index");
                h.css("z-index", parseInt(v) + 1 + k);
                var t = h.find(".nav img").attr("src");
                h.find(".nav a.thumb span").css({
                    background: "url(" + t + ") no-repeat center bottom"
                });
                h.find(".nav a.thumb span").addClass("current");
                h.find(".nav span img").stop().fadeTo("normal", 0, function () {
                    a(this).hide()
                });
                var q;
                var s = 0;
                var u = 0;
                var r = 0;
                a(".item").each(function () {
                    q = a(this).css("z-index");
                    if (parseInt(q) >= parseInt(u)) {
                        u = q;
                        s = r
                    }
                    r++
                });
                a(".nav").find("span img").stop().fadeTo("normal", 1).show();
                var t = h.find(".nav img").attr("src");
                h.find(".nav a.thumb span").css({
                    background: "url(" + t + ") no-repeat center bottom"
                });
                h.find(".nav a.thumb span").addClass("current");
                h.find(".nav span img").stop().fadeTo("normal", 0, function () {
                    a(this).hide()
                });
                h.animate({
                    left: 0,
                    top: 0
                }, l.speedOut, l.easeOut, function () {
                    if (g) {
                        g()
                    }
                })
            })
        }
    };
    a.fn.cycle.transitions.turnUp = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, true, false);
            f.cssBefore.top = e.cycleH;
            f.animIn.height = e.cycleH
        });
        b.cssFirst = {
            top: 0
        };
        b.cssBefore = {
            left: 0,
            height: 0
        };
        b.animIn = {
            top: 0
        };
        b.animOut = {
            height: 0
        }
    };
    a.fn.cycle.transitions.turnDown = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, true, false);
            f.animIn.height = e.cycleH;
            f.animOut.top = g.cycleH
        });
        b.cssFirst = {
            top: 0
        };
        b.cssBefore = {
            left: 0,
            top: 0,
            height: 0
        };
        b.animOut = {
            height: 0
        }
    };
    a.fn.cycle.transitions.turnLeft = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, false, true);
            f.cssBefore.left = e.cycleW;
            f.animIn.width = e.cycleW
        });
        b.cssBefore = {
            top: 0,
            width: 0
        };
        b.animIn = {
            left: 0
        };
        b.animOut = {
            width: 0
        }
    };
    a.fn.cycle.transitions.turnRight = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, false, true);
            f.animIn.width = e.cycleW;
            f.animOut.left = g.cycleW
        });
        b.cssBefore = {
            top: 0,
            left: 0,
            width: 0
        };
        b.animIn = {
            left: 0
        };
        b.animOut = {
            width: 0
        }
    };
    a.fn.cycle.transitions.zoom = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, false, false, true);
            f.cssBefore.top = e.cycleH / 2;
            f.cssBefore.left = e.cycleW / 2;
            f.animIn = {
                top: 0,
                left: 0,
                width: e.cycleW,
                height: e.cycleH
            };
            f.animOut = {
                width: 0,
                height: 0,
                top: g.cycleH / 2,
                left: g.cycleW / 2
            }
        });
        b.cssFirst = {
            top: 0,
            left: 0
        };
        b.cssBefore = {
            width: 0,
            height: 0
        }
    };
    a.fn.cycle.transitions.fadeZoom = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, false, false);
            f.cssBefore.left = e.cycleW / 2;
            f.cssBefore.top = e.cycleH / 2;
            f.animIn = {
                top: 0,
                left: 0,
                width: e.cycleW,
                height: e.cycleH
            }
        });
        b.cssBefore = {
            width: 0,
            height: 0
        };
        b.animOut = {
            opacity: 0
        }
    };
    a.fn.cycle.transitions.blindX = function (d, e, c) {
        var b = d.css("overflow", "hidden").width();
        c.before.push(function (h, f, g) {
            a.fn.cycle.commonReset(h, f, g);
            g.animIn.width = f.cycleW;
            g.animOut.left = h.cycleW
        });
        c.cssBefore = {
            left: b,
            top: 0
        };
        c.animIn = {
            left: 0
        };
        c.animOut = {
            left: b
        }
    };
    a.fn.cycle.transitions.blindY = function (d, e, c) {
        var b = d.css("overflow", "hidden").height();
        c.before.push(function (h, f, g) {
            a.fn.cycle.commonReset(h, f, g);
            g.animIn.height = f.cycleH;
            g.animOut.top = h.cycleH
        });
        c.cssBefore = {
            top: b,
            left: 0
        };
        c.animIn = {
            top: 0
        };
        c.animOut = {
            top: b
        }
    };
    a.fn.cycle.transitions.blindZ = function (e, f, d) {
        var c = e.css("overflow", "hidden").height();
        var b = e.width();
        d.before.push(function (i, g, h) {
            a.fn.cycle.commonReset(i, g, h);
            h.animIn.height = g.cycleH;
            h.animOut.top = i.cycleH
        });
        d.cssBefore = {
            top: c,
            left: b
        };
        d.animIn = {
            top: 0,
            left: 0
        };
        d.animOut = {
            top: c,
            left: b
        }
    };
    a.fn.cycle.transitions.growX = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, false, true);
            f.cssBefore.left = this.cycleW / 2;
            f.animIn = {
                left: 0,
                width: this.cycleW
            };
            f.animOut = {
                left: 0
            }
        });
        b.cssBefore = {
            width: 0,
            top: 0
        }
    };
    a.fn.cycle.transitions.growY = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, true, false);
            f.cssBefore.top = this.cycleH / 2;
            f.animIn = {
                top: 0,
                height: this.cycleH
            };
            f.animOut = {
                top: 0
            }
        });
        b.cssBefore = {
            height: 0,
            left: 0
        }
    };
    a.fn.cycle.transitions.curtainX = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, false, true, true);
            f.cssBefore.left = e.cycleW / 2;
            f.animIn = {
                left: 0,
                width: this.cycleW
            };
            f.animOut = {
                left: g.cycleW / 2,
                width: 0
            }
        });
        b.cssBefore = {
            top: 0,
            width: 0
        }
    };
    a.fn.cycle.transitions.curtainY = function (c, d, b) {
        b.before.push(function (g, e, f) {
            a.fn.cycle.commonReset(g, e, f, true, false, true);
            f.cssBefore.top = e.cycleH / 2;
            f.animIn = {
                top: 0,
                height: e.cycleH
            };
            f.animOut = {
                top: g.cycleH / 2,
                height: 0
            }
        });
        b.cssBefore = {
            left: 0,
            height: 0
        }
    };
    a.fn.cycle.transitions.cover = function (f, g, e) {
        var i = e.direction || "left";
        var b = f.css("overflow", "hidden").width();
        var c = f.height();
        e.before.push(function (j, d, h) {
            a.fn.cycle.commonReset(j, d, h);
            if (i == "right") {
                h.cssBefore.left = -b
            } else {
                if (i == "up") {
                    h.cssBefore.top = c
                } else {
                    if (i == "down") {
                        h.cssBefore.top = -c
                    } else {
                        h.cssBefore.left = b
                    }
                }
            }
        });
        e.animIn = {
            left: 0,
            top: 0
        };
        e.animOut = {
            opacity: 1
        };
        e.cssBefore = {
            top: 0,
            left: 0
        }
    };
    a.fn.cycle.transitions.uncover = function (f, g, e) {
        var i = e.direction || "left";
        var b = f.css("overflow", "hidden").width();
        var c = f.height();
        e.before.push(function (j, d, h) {
            a.fn.cycle.commonReset(j, d, h, true, true, true);
            if (i == "right") {
                h.animOut.left = b
            } else {
                if (i == "up") {
                    h.animOut.top = -c
                } else {
                    if (i == "down") {
                        h.animOut.top = c
                    } else {
                        h.animOut.left = -b
                    }
                }
            }
        });
        e.animIn = {
            left: 0,
            top: 0
        };
        e.animOut = {
            opacity: 1
        };
        e.cssBefore = {
            top: 0,
            left: 0
        }
    };
    a.fn.cycle.transitions.toss = function (e, f, d) {
        var b = e.css("overflow", "visible").width();
        var c = e.height();
        d.before.push(function (i, g, h) {
            a.fn.cycle.commonReset(i, g, h, true, true, true);
            if (!h.animOut.left && !h.animOut.top) {
                h.animOut = {
                    left: b * 2,
                    top: -c / 2,
                    opacity: 0
                }
            } else {
                h.animOut.opacity = 0
            }
        });
        d.cssBefore = {
            left: 0,
            top: 0
        };
        d.animIn = {
            left: 0
        }
    };
    a.fn.cycle.transitions.wipe = function (s, m, e) {
        var q = s.css("overflow", "hidden").width();
        var j = s.height();
        e.cssBefore = e.cssBefore || {};
        var g;
        if (e.clip) {
            if (/l2r/.test(e.clip)) {
                g = "rect(0px 0px " + j + "px 0px)"
            } else {
                if (/r2l/.test(e.clip)) {
                    g = "rect(0px " + q + "px " + j + "px " + q + "px)"
                } else {
                    if (/t2b/.test(e.clip)) {
                        g = "rect(0px " + q + "px 0px 0px)"
                    } else {
                        if (/b2t/.test(e.clip)) {
                            g = "rect(" + j + "px " + q + "px " + j + "px 0px)"
                        } else {
                            if (/zoom/.test(e.clip)) {
                                var o = parseInt(j / 2);
                                var f = parseInt(q / 2);
                                g = "rect(" + o + "px " + f + "px " + o + "px " + f + "px)"
                            }
                        }
                    }
                }
            }
        }
        e.cssBefore.clip = e.cssBefore.clip || g || "rect(0px 0px 0px 0px)";
        var k = e.cssBefore.clip.match(/(\d+)/g);
        var u = parseInt(k[0]),
            c = parseInt(k[1]),
            n = parseInt(k[2]),
            i = parseInt(k[3]);
        e.before.push(function (w, h, t) {
            if (w == h) {
                return
            }
            var d = a(w),
                b = a(h);
            a.fn.cycle.commonReset(w, h, t, true, true, false);
            t.cssAfter.display = "block";
            var r = 1,
                l = parseInt((t.speedIn / 13)) - 1;
            (function v() {
                var y = u ? u - parseInt(r * (u / l)) : 0;
                var z = i ? i - parseInt(r * (i / l)) : 0;
                var A = n < j ? n + parseInt(r * ((j - n) / l || 1)) : j;
                var x = c < q ? c + parseInt(r * ((q - c) / l || 1)) : q;
                b.css({
                    clip: "rect(" + y + "px " + x + "px " + A + "px " + z + "px)"
                });
                (r++ <= l) ? setTimeout(v, 13) : d.css("display", "none")
            })()
        });
        e.cssBefore = {
            display: "block",
            opacity: 1,
            top: 0,
            left: 0
        };
        e.animIn = {
            left: 0
        };
        e.animOut = {
            left: 0
        }
    }
})(jQuery);
$(document).ready(function () {
    var u = $("#portfolio-container ul").children().size();
    var f = 4;
    var j = $(".pdiv").width();
    var v = $(".pdiv").height();
    var q = parseInt($(".pdiv").css("margin-right").replace("px", ""));
    var a = new Array();
    var d = (u / f) + "";
    var e = d.split(".");
    var b = parseInt(e[0]);
    if (parseInt(e[1]) > 0) {
        b++
    }
    var r = new Array(f);
    for (var t = 0; t < f; t++) {
        r[t] = (j + q) * t
    }
    var o = new Array(b);
    for (var t = 0; t < b; t++) {
        o[t] = (v + q) * t
    }
    var n = new Array(u);
    var k = new Array(u);
    var l = 0;
    var w = 0;
    for (var h = 0; h < b; h++) {
        for (var m = 0; m < f; m++) {
            n[w] = r[m];
            k[w] = o[h];
            w++
        }
    }
    $("#portfolio-container").find(".pdiv").each(function (x) {
        this.style.left = n[l] + "px";
        this.style.top = k[l] + "px";
        l++
    });
    var g = 0;

    function c(A, z, x, i) {
        var D = u - $("div#portfolio div.hidden").size();
        var C = (D / A) + "";
        var y = C.split(".");
        var B = parseInt(y[0]);
        if (parseInt(y[1]) > 0) {
            B++
        }
        if (g == 0) {
            g = B * (x + i);
            $("#portfolio-container").animate({
                height: (B * (x + i) - 10)
            }, 900)
        } else {
            if ((B * (x + i)) >= g) {
                $("#portfolio-container").animate({
                    height: (B * (x + i) - 10)
                }, 300)
            } else {
                $("#portfolio-container").animate({
                    height: (B * (x + i) - 10)
                }, 900)
            }
            g = B * (x + i)
        }
    }
    c(f, j, v, q);
    var s = 0;
    $("ul#filter a").click(function () {
        $(this).css("outline", "none");
        $("ul#filter .current").removeClass("current");
        $(this).parent().addClass("current");
        var i = $(this).text().toLowerCase().replace(" ", "-");
        if (i == "all") {
            $("div#portfolio-container").find(".pdiv").each(function (x) {
                $(this).animate({
                    left: n[x],
                    top: k[x],
                    avoidTransforms: false
                }, 600)
            });
            $("div#portfolio-container div.hidden").fadeIn(600).removeClass("hidden");
            c(f, j, v, q)
        } else {
            s = 0;
            $("div#portfolio-container div").each(function () {
                if (!$(this).hasClass(i)) {
                    $(this).fadeOut(600).addClass("hidden")
                } else {
                    $(this).animate({
                        left: n[s],
                        top: k[s],
                        avoidTransforms: false
                    }, 600);
                    s++;
                    $(this).fadeIn(600).removeClass("hidden")
                }
            });
            c(f, j, v, q)
        }
        return false
    })
});
(function (a) {
    a.prettyPhoto = {
        version: "3.0.2"
    };
    a.fn.prettyPhoto = function (d) {
        d = jQuery.extend({
            animation_speed: "fast",
            slideshow: false,
            autoplay_slideshow: false,
            opacity: 0.8,
            show_title: true,
            allow_resize: true,
            default_width: 500,
            default_height: 344,
            counter_separator_label: "/",
            theme: "facebook",
            hideflash: false,
            wmode: "opaque",
            autoplay: true,
            modal: false,
            overlay_gallery: true,
            keyboard_shortcuts: true,
            changepicturecallback: function () {},
            callback: function () {},
            markup: '<div class="pp_pic_holder">       <div class="ppt">&nbsp;</div>       <div class="pp_top">        <div class="pp_left"></div>        <div class="pp_middle"></div>        <div class="pp_right"></div>       </div>       <div class="pp_content_container">        <div class="pp_left">        <div class="pp_right">         <div class="pp_content">          <div class="pp_loaderIcon"></div>          <div class="pp_fade">           <a href="#" class="pp_expand" title="Expand the image">Expand</a>           <div class="pp_hoverContainer">            <a class="pp_next" href="#">next</a>            <a class="pp_previous" href="#">previous</a>           </div>           <div id="pp_full_res"></div>           <div class="pp_details clearfix">            <p class="pp_description"></p>            <a class="pp_close" href="#">Close</a>            <div class="pp_nav">             <a href="#" class="pp_arrow_previous">Previous</a>             <p class="currentTextHolder">0/0</p>             <a href="#" class="pp_arrow_next">Next</a>            </div>           </div>          </div>         </div>        </div>        </div>       </div>       <div class="pp_bottom">        <div class="pp_left"></div>        <div class="pp_middle"></div>        <div class="pp_right"></div>       </div>      </div>      <div class="pp_overlay"></div>',
            gallery_markup: '<div class="pp_gallery">         <a href="#" class="pp_arrow_previous">Previous</a>         <ul>          {gallery}         </ul>         <a href="#" class="pp_arrow_next">Next</a>        </div>',
            image_markup: '<img id="fullResImage" src="{path}" />',
            flash_markup: '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="{width}" height="{height}"><param name="wmode" value="{wmode}" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{path}" /><embed src="{path}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="{width}" height="{height}" wmode="{wmode}"></embed></object>',
            quicktime_markup: '<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" height="{height}" width="{width}"><param name="src" value="{path}"><param name="autoplay" value="{autoplay}"><param name="type" value="video/quicktime"><embed src="{path}" height="{height}" width="{width}" autoplay="{autoplay}" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"></embed></object>',
            iframe_markup: '<iframe src ="{path}" width="{width}" height="{height}" frameborder="no"></iframe>',
            inline_markup: '<div class="pp_inline clearfix">{content}</div>',
            custom_markup: ""
        }, d);
        var j = this,
            i = false,
            q, n, o, r, u, w, e = a(window).height(),
            z = a(window).width(),
            f;
        doresize = true, scroll_pos = x();
        a(window).unbind("resize.prettyphoto").bind("resize.prettyphoto", function () {
            m();
            t()
        });
        if (d.keyboard_shortcuts) {
            a(document).unbind("keydown.prettyphoto").bind("keydown.prettyphoto", function (A) {
                if (typeof $pp_pic_holder != "undefined") {
                    if ($pp_pic_holder.is(":visible")) {
                        switch (A.keyCode) {
                        case 37:
                            a.prettyPhoto.changePage("previous");
                            A.preventDefault();
                            break;
                        case 39:
                            a.prettyPhoto.changePage("next");
                            A.preventDefault();
                            break;
                        case 27:
                            if (!settings.modal) {
                                a.prettyPhoto.close()
                            }
                            A.preventDefault();
                            break
                        }
                    }
                }
            })
        }
        a.prettyPhoto.initialize = function () {
            settings = d;
            if (a.browser.msie && parseInt(a.browser.version) == 6) {
                settings.theme = "light_square"
            }
            theRel = a(this).attr("rel");
            galleryRegExp = /\[(?:.*)\]/;
            isSet = (galleryRegExp.exec(theRel)) ? true : false;
            pp_images = (isSet) ? jQuery.map(j, function (B, A) {
                if (a(B).attr("rel").indexOf(theRel) != -1) {
                    return a(B).attr("href")
                }
            }) : a.makeArray(a(this).attr("href"));
            pp_titles = (isSet) ? jQuery.map(j, function (B, A) {
                if (a(B).attr("rel").indexOf(theRel) != -1) {
                    return (a(B).find("img").attr("alt")) ? a(B).find("img").attr("alt") : ""
                }
            }) : a.makeArray(a(this).find("img").attr("alt"));
            pp_descriptions = (isSet) ? jQuery.map(j, function (B, A) {
                if (a(B).attr("rel").indexOf(theRel) != -1) {
                    return (a(B).attr("title")) ? a(B).attr("title") : ""
                }
            }) : a.makeArray(a(this).attr("title"));
            v(this);
            if (settings.allow_resize) {
                a(window).bind("scroll.prettyphoto", function () {
                    m()
                })
            }
            set_position = jQuery.inArray(a(this).attr("href"), pp_images);
            a.prettyPhoto.open();
            return false
        };
        a.prettyPhoto.open = function (A) {
            if (typeof settings == "undefined") {
                settings = d;
                if (a.browser.msie && a.browser.version == 6) {
                    settings.theme = "light_square"
                }
                pp_images = a.makeArray(arguments[0]);
                pp_titles = (arguments[1]) ? a.makeArray(arguments[1]) : a.makeArray("");
                pp_descriptions = (arguments[2]) ? a.makeArray(arguments[2]) : a.makeArray("");
                isSet = (pp_images.length > 1) ? true : false;
                set_position = 0;
                v(A.target)
            }
            if (a.browser.msie && a.browser.version == 6) {
                a("select").css("visibility", "hidden")
            }
            if (settings.hideflash) {
                a("object,embed").css("visibility", "hidden")
            }
            h(a(pp_images).size());
            a(".pp_loaderIcon").show();
            if ($ppt.is(":hidden")) {
                $ppt.css("opacity", 0).show()
            }
            $pp_overlay.show().fadeTo(settings.animation_speed, settings.opacity);
            $pp_pic_holder.find(".currentTextHolder").text((set_position + 1) + settings.counter_separator_label + a(pp_images).size());
            $pp_pic_holder.find(".pp_description").show().html(unescape(pp_descriptions[set_position]));
            (settings.show_title && pp_titles[set_position] != "" && typeof pp_titles[set_position] != "undefined") ? $ppt.html(unescape(pp_titles[set_position])) : $ppt.html("&nbsp;");
            movie_width = (parseFloat(b("width", pp_images[set_position]))) ? b("width", pp_images[set_position]) : settings.default_width.toString();
            movie_height = (parseFloat(b("height", pp_images[set_position]))) ? b("height", pp_images[set_position]) : settings.default_height.toString();
            if (movie_height.indexOf("%") != -1) {
                movie_height = parseFloat((a(window).height() * parseFloat(movie_height) / 100) - 150);
                i = true
            }
            if (movie_width.indexOf("%") != -1) {
                movie_width = parseFloat((a(window).width() * parseFloat(movie_width) / 100) - 150);
                i = true
            }
            $pp_pic_holder.fadeIn(function () {
                imgPreloader = "";
                switch (y(pp_images[set_position])) {
                case "image":
                    imgPreloader = new Image();
                    nextImage = new Image();
                    if (isSet && set_position < a(pp_images).size() - 1) {
                        nextImage.src = pp_images[set_position + 1]
                    }
                    prevImage = new Image();
                    if (isSet && pp_images[set_position - 1]) {
                        prevImage.src = pp_images[set_position - 1]
                    }
                    $pp_pic_holder.find("#pp_full_res")[0].innerHTML = settings.image_markup.replace(/{path}/g, pp_images[set_position]);
                    imgPreloader.onload = function () {
                        q = l(imgPreloader.width, imgPreloader.height);
                        g()
                    };
                    imgPreloader.onerror = function () {
                        alert("Image cannot be loaded. Make sure the path is correct and image exist.");
                        a.prettyPhoto.close()
                    };
                    imgPreloader.src = pp_images[set_position];
                    break;
                case "youtube":
                    q = l(movie_width, movie_height);
                    movie = "http://www.youtube.com/v/" + b("v", pp_images[set_position]);
                    if (settings.autoplay) {
                        movie += "&autoplay=1"
                    }
                    toInject = settings.flash_markup.replace(/{width}/g, q.width).replace(/{height}/g, q.height).replace(/{wmode}/g, settings.wmode).replace(/{path}/g, movie);
                    break;
                case "vimeo":
                    q = l(movie_width, movie_height);
                    movie_id = pp_images[set_position];
                    var C = /http:\/\/(www\.)?vimeo.com\/(\d+)/;
                    var B = movie_id.match(C);
                    movie = "http://player.vimeo.com/video/" + B[2] + "?title=0&amp;byline=0&amp;portrait=0";
                    if (settings.autoplay) {
                        movie += "&autoplay=1;"
                    }
                    vimeo_width = q.width + "/embed/?moog_width=" + q.width;
                    toInject = settings.iframe_markup.replace(/{width}/g, vimeo_width).replace(/{height}/g, q.height).replace(/{path}/g, movie);
                    break;
                case "quicktime":
                    q = l(movie_width, movie_height);
                    q.height += 15;
                    q.contentHeight += 15;
                    q.containerHeight += 15;
                    toInject = settings.quicktime_markup.replace(/{width}/g, q.width).replace(/{height}/g, q.height).replace(/{wmode}/g, settings.wmode).replace(/{path}/g, pp_images[set_position]).replace(/{autoplay}/g, settings.autoplay);
                    break;
                case "flash":
                    q = l(movie_width, movie_height);
                    flash_vars = pp_images[set_position];
                    flash_vars = flash_vars.substring(pp_images[set_position].indexOf("flashvars") + 10, pp_images[set_position].length);
                    filename = pp_images[set_position];
                    filename = filename.substring(0, filename.indexOf("?"));
                    toInject = settings.flash_markup.replace(/{width}/g, q.width).replace(/{height}/g, q.height).replace(/{wmode}/g, settings.wmode).replace(/{path}/g, filename + "?" + flash_vars);
                    break;
                case "iframe":
                    q = l(movie_width, movie_height);
                    frame_url = pp_images[set_position];
                    frame_url = frame_url.substr(0, frame_url.indexOf("iframe") - 1);
                    toInject = settings.iframe_markup.replace(/{width}/g, q.width).replace(/{height}/g, q.height).replace(/{path}/g, frame_url);
                    break;
                case "custom":
                    q = l(movie_width, movie_height);
                    toInject = settings.custom_markup;
                    break;
                case "inline":
                    myClone = a(pp_images[set_position]).clone().css({
                        width: settings.default_width
                    }).wrapInner('<div id="pp_full_res"><div class="pp_inline clearfix"></div></div>').appendTo(a("body")).show();
                    doresize = false;
                    q = l(a(myClone).width(), a(myClone).height());
                    doresize = true;
                    a(myClone).remove();
                    toInject = settings.inline_markup.replace(/{content}/g, a(pp_images[set_position]).html());
                    break
                }
                if (!imgPreloader) {
                    $pp_pic_holder.find("#pp_full_res")[0].innerHTML = toInject;
                    g()
                }
            });
            return false
        };
        a.prettyPhoto.changePage = function (A) {
            currentGalleryPage = 0;
            if (A == "previous") {
                set_position--;
                if (set_position < 0) {
                    set_position = 0;
                    return
                }
            } else {
                if (A == "next") {
                    set_position++;
                    if (set_position > a(pp_images).size() - 1) {
                        set_position = 0
                    }
                } else {
                    set_position = A
                }
            }
            if (!doresize) {
                doresize = true
            }
            a(".pp_contract").removeClass("pp_contract").addClass("pp_expand");
            k(function () {
                a.prettyPhoto.open()
            })
        };
        a.prettyPhoto.changeGalleryPage = function (A) {
            if (A == "next") {
                currentGalleryPage++;
                if (currentGalleryPage > totalPage) {
                    currentGalleryPage = 0
                }
            } else {
                if (A == "previous") {
                    currentGalleryPage--;
                    if (currentGalleryPage < 0) {
                        currentGalleryPage = totalPage
                    }
                } else {
                    currentGalleryPage = A
                }
            }
            itemsToSlide = (currentGalleryPage == totalPage) ? pp_images.length - ((totalPage) * itemsPerPage) : itemsPerPage;
            $pp_pic_holder.find(".pp_gallery li").each(function (B) {
                a(this).animate({
                    left: (B * itemWidth) - ((itemsToSlide * itemWidth) * currentGalleryPage)
                })
            })
        };
        a.prettyPhoto.startSlideshow = function () {
            if (typeof f == "undefined") {
                $pp_pic_holder.find(".pp_play").unbind("click").removeClass("pp_play").addClass("pp_pause").click(function () {
                    a.prettyPhoto.stopSlideshow();
                    return false
                });
                f = setInterval(a.prettyPhoto.startSlideshow, settings.slideshow)
            } else {
                a.prettyPhoto.changePage("next")
            }
        };
        a.prettyPhoto.stopSlideshow = function () {
            $pp_pic_holder.find(".pp_pause").unbind("click").removeClass("pp_pause").addClass("pp_play").click(function () {
                a.prettyPhoto.startSlideshow();
                return false
            });
            clearInterval(f);
            f = undefined
        };
        a.prettyPhoto.close = function () {
            if ($pp_overlay.is(":animated")) {
                return
            }
            a.prettyPhoto.stopSlideshow();
            $pp_pic_holder.stop().find("object,embed").css("visibility", "hidden");
            a("div.pp_pic_holder,div.ppt,.pp_fade").fadeOut(settings.animation_speed, function () {
                a(this).remove()
            });
            $pp_overlay.fadeOut(settings.animation_speed, function () {
                if (a.browser.msie && a.browser.version == 6) {
                    a("select").css("visibility", "visible")
                }
                if (settings.hideflash) {
                    a("object,embed").css("visibility", "visible")
                }
                a(this).remove();
                a(window).unbind("scroll");
                settings.callback();
                doresize = true;
                n = false;
                delete settings
            })
        };

        function g() {
            a(".pp_loaderIcon").hide();
            $ppt.fadeTo(settings.animation_speed, 1);
            projectedTop = scroll_pos.scrollTop + ((e / 2) - (q.containerHeight / 2));
            if (projectedTop < 0) {
                projectedTop = 0
            }
            $pp_pic_holder.find(".pp_content").animate({
                height: q.contentHeight,
                width: q.contentWidth
            }, settings.animation_speed);
            $pp_pic_holder.animate({
                top: projectedTop,
                left: (z / 2) - (q.containerWidth / 2),
                width: q.containerWidth
            }, settings.animation_speed, function () {
                $pp_pic_holder.find(".pp_hoverContainer,#fullResImage").height(q.height).width(q.width);
                $pp_pic_holder.find(".pp_fade").fadeIn(settings.animation_speed);
                if (isSet && y(pp_images[set_position]) == "image") {
                    $pp_pic_holder.find(".pp_hoverContainer").show()
                } else {
                    $pp_pic_holder.find(".pp_hoverContainer").hide()
                }
                if (q.resized) {
                    a("a.pp_expand,a.pp_contract").show()
                } else {
                    a("a.pp_expand,a.pp_contract").hide()
                }
                if (settings.autoplay_slideshow && !f && !n) {
                    a.prettyPhoto.startSlideshow()
                }
                settings.changepicturecallback();
                n = true
            });
            c()
        }
        function k(A) {
            $pp_pic_holder.find("#pp_full_res object,#pp_full_res embed").css("visibility", "hidden");
            $pp_pic_holder.find(".pp_fade").fadeOut(settings.animation_speed, function () {
                a(".pp_loaderIcon").show();
                A()
            })
        }
        function h(A) {
            (A > 1) ? a(".pp_nav").show() : a(".pp_nav").hide()
        }
        function l(B, A) {
            resized = false;
            s(B, A);
            imageWidth = B, imageHeight = A;
            if (((w > z) || (u > e)) && doresize && settings.allow_resize && !i) {
                resized = true, fitting = false;
                while (!fitting) {
                    if ((w > z)) {
                        imageWidth = (z - 200);
                        imageHeight = (A / B) * imageWidth
                    } else {
                        if ((u > e)) {
                            imageHeight = (e - 200);
                            imageWidth = (B / A) * imageHeight
                        } else {
                            fitting = true
                        }
                    }
                    u = imageHeight, w = imageWidth
                }
                s(imageWidth, imageHeight)
            }
            return {
                width: Math.floor(imageWidth),
                height: Math.floor(imageHeight),
                containerHeight: Math.floor(u),
                containerWidth: Math.floor(w) + 40,
                contentHeight: Math.floor(o),
                contentWidth: Math.floor(r),
                resized: resized
            }
        }
        function s(B, A) {
            B = parseFloat(B);
            A = parseFloat(A);
            $pp_details = $pp_pic_holder.find(".pp_details");
            $pp_details.width(B);
            detailsHeight = parseFloat($pp_details.css("marginTop")) + parseFloat($pp_details.css("marginBottom"));
            $pp_details = $pp_details.clone().appendTo(a("body")).css({
                position: "absolute",
                top: -10000
            });
            detailsHeight += $pp_details.height();
            detailsHeight = (detailsHeight <= 34) ? 36 : detailsHeight;
            if (a.browser.msie && a.browser.version == 7) {
                detailsHeight += 8
            }
            $pp_details.remove();
            $pp_title = $pp_pic_holder.find(".ppt");
            $pp_title.width(B);
            titleHeight = parseFloat($pp_title.css("marginTop")) + parseFloat($pp_title.css("marginBottom"));
            $pp_title = $pp_title.clone().appendTo(a("body")).css({
                position: "absolute",
                top: -10000
            });
            titleHeight += $pp_title.height();
            $pp_title.remove();
            o = A + detailsHeight;
            r = B;
            u = o + titleHeight + $pp_pic_holder.find(".pp_top").height() + $pp_pic_holder.find(".pp_bottom").height();
            w = B
        }
        function y(A) {
            if (A.match(/youtube\.com\/watch/i)) {
                return "youtube"
            } else {
                if (A.match(/vimeo\.com/i)) {
                    return "vimeo"
                } else {
                    if (A.match(/\b.mov\b/i)) {
                        return "quicktime"
                    } else {
                        if (A.match(/\b.swf\b/i)) {
                            return "flash"
                        } else {
                            if (A.match(/\biframe=true\b/i)) {
                                return "iframe"
                            } else {
                                if (A.match(/\bcustom=true\b/i)) {
                                    return "custom"
                                } else {
                                    if (A.substr(0, 1) == "#") {
                                        return "inline"
                                    } else {
                                        return "image"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        function m() {
            if (doresize && typeof $pp_pic_holder != "undefined") {
                scroll_pos = x();
                contentHeight = $pp_pic_holder.height(), contentwidth = $pp_pic_holder.width();
                projectedTop = (e / 2) + scroll_pos.scrollTop - (contentHeight / 2);
                if (projectedTop < 0) {
                    projectedTop = 0
                }
                $pp_pic_holder.css({
                    top: projectedTop,
                    left: (z / 2) + scroll_pos.scrollLeft - (contentwidth / 2)
                })
            }
        }
        function x() {
            if (self.pageYOffset) {
                return {
                    scrollTop: self.pageYOffset,
                    scrollLeft: self.pageXOffset
                }
            } else {
                if (document.documentElement && document.documentElement.scrollTop) {
                    return {
                        scrollTop: document.documentElement.scrollTop,
                        scrollLeft: document.documentElement.scrollLeft
                    }
                } else {
                    if (document.body) {
                        return {
                            scrollTop: document.body.scrollTop,
                            scrollLeft: document.body.scrollLeft
                        }
                    }
                }
            }
        }
        function t() {
            e = a(window).height(), z = a(window).width();
            if (typeof $pp_overlay != "undefined") {
                $pp_overlay.height(a(document).height()).width(z)
            }
        }
        function c() {
            if (isSet && settings.overlay_gallery && y(pp_images[set_position]) == "image") {
                itemWidth = 52 + 5;
                navWidth = (settings.theme == "facebook") ? 58 : 38;
                itemsPerPage = Math.floor((q.containerWidth - 100 - navWidth) / itemWidth);
                itemsPerPage = (itemsPerPage < pp_images.length) ? itemsPerPage : pp_images.length;
                totalPage = Math.ceil(pp_images.length / itemsPerPage) - 1;
                if (totalPage == 0) {
                    navWidth = 0;
                    $pp_pic_holder.find(".pp_gallery .pp_arrow_next,.pp_gallery .pp_arrow_previous").hide()
                } else {
                    $pp_pic_holder.find(".pp_gallery .pp_arrow_next,.pp_gallery .pp_arrow_previous").show()
                }
                galleryWidth = itemsPerPage * itemWidth + navWidth;
                $pp_pic_holder.find(".pp_gallery").width(galleryWidth).css("margin-left", -(galleryWidth / 2));
                $pp_pic_holder.find(".pp_gallery ul").width(itemsPerPage * itemWidth).find("li.selected").removeClass("selected");
                goToPage = (Math.ceil((set_position + 1) / itemsPerPage) < totalPage) ? Math.ceil((set_position + 1) / itemsPerPage) : totalPage;
                a.prettyPhoto.changeGalleryPage(goToPage);
                $pp_pic_holder.find(".pp_gallery ul li:eq(" + set_position + ")").addClass("selected")
            } else {
                $pp_pic_holder.find(".pp_content").unbind("mouseenter mouseleave");
                $pp_pic_holder.find(".pp_gallery").hide()
            }
        }
        function v(A) {
            a("body").append(settings.markup);
            $pp_pic_holder = a(".pp_pic_holder"), $ppt = a(".ppt"), $pp_overlay = a("div.pp_overlay");
            if (isSet && settings.overlay_gallery) {
                currentGalleryPage = 0;
                toInject = "";
                for (var B = 0; B < pp_images.length; B++) {
                    if (!pp_images[B].match(/\b(jpg|jpeg|png|gif)\b/gi)) {
                        classname = "default"
                    } else {
                        classname = ""
                    }
                    toInject += "<li class='" + classname + "'><a href='#'><img src='" + pp_images[B] + "' width='50' alt='' /></a></li>"
                }
                toInject = settings.gallery_markup.replace(/{gallery}/g, toInject);
                $pp_pic_holder.find("#pp_full_res").after(toInject);
                $pp_pic_holder.find(".pp_gallery .pp_arrow_next").click(function () {
                    a.prettyPhoto.changeGalleryPage("next");
                    a.prettyPhoto.stopSlideshow();
                    return false
                });
                $pp_pic_holder.find(".pp_gallery .pp_arrow_previous").click(function () {
                    a.prettyPhoto.changeGalleryPage("previous");
                    a.prettyPhoto.stopSlideshow();
                    return false
                });
                $pp_pic_holder.find(".pp_content").hover(function () {
                    $pp_pic_holder.find(".pp_gallery:not(.disabled)").fadeIn()
                }, function () {
                    $pp_pic_holder.find(".pp_gallery:not(.disabled)").fadeOut()
                });
                itemWidth = 52 + 5;
                $pp_pic_holder.find(".pp_gallery ul li").each(function (C) {
                    a(this).css({
                        position: "absolute",
                        left: C * itemWidth
                    });
                    a(this).find("a").unbind("click").click(function () {
                        a.prettyPhoto.changePage(C);
                        a.prettyPhoto.stopSlideshow();
                        return false
                    })
                })
            }
            if (settings.slideshow) {
                $pp_pic_holder.find(".pp_nav").prepend('<a href="#" class="pp_play">Play</a>');
                $pp_pic_holder.find(".pp_nav .pp_play").click(function () {
                    a.prettyPhoto.startSlideshow();
                    return false
                })
            }
            $pp_pic_holder.attr("class", "pp_pic_holder " + settings.theme);
            $pp_overlay.css({
                opacity: 0,
                height: a(document).height(),
                width: a(window).width()
            }).bind("click", function () {
                if (!settings.modal) {
                    a.prettyPhoto.close()
                }
            });
            a("a.pp_close").bind("click", function () {
                a.prettyPhoto.close();
                return false
            });
            a("a.pp_expand").bind("click", function (C) {
                if (a(this).hasClass("pp_expand")) {
                    a(this).removeClass("pp_expand").addClass("pp_contract");
                    doresize = false
                } else {
                    a(this).removeClass("pp_contract").addClass("pp_expand");
                    doresize = true
                }
                k(function () {
                    a.prettyPhoto.open()
                });
                return false
            });
            $pp_pic_holder.find(".pp_previous, .pp_nav .pp_arrow_previous").bind("click", function () {
                a.prettyPhoto.changePage("previous");
                a.prettyPhoto.stopSlideshow();
                return false
            });
            $pp_pic_holder.find(".pp_next, .pp_nav .pp_arrow_next").bind("click", function () {
                a.prettyPhoto.changePage("next");
                a.prettyPhoto.stopSlideshow();
                return false
            });
            m()
        }
        return this.unbind("click.prettyphoto").bind("click.prettyphoto", a.prettyPhoto.initialize)
    };

    function b(e, d) {
        e = e.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
        var c = "[\\?&]" + e + "=([^&#]*)";
        var g = new RegExp(c);
        var f = g.exec(d);
        return (f == null) ? "" : f[1]
    }
})(jQuery);
(function (b) {
    b.fn.ajaxSubmit = function (r) {
        if (!this.length) {
            a("ajaxSubmit: skipping submit process - no element selected");
            return this
        }
        if (typeof r == "function") {
            r = {
                success: r
            }
        }
        r = b.extend({
            url: this.attr("action") || window.location.toString(),
            type: this.attr("method") || "GET"
        }, r || {});
        var t = {};
        this.trigger("form-pre-serialize", [this, r, t]);
        if (t.veto) {
            a("ajaxSubmit: submit vetoed via form-pre-serialize trigger");
            return this
        }
        if (r.beforeSerialize && r.beforeSerialize(this, r) === false) {
            a("ajaxSubmit: submit aborted via beforeSerialize callback");
            return this
        }
        var i = this.formToArray(r.semantic);
        if (r.data) {
            r.extraData = r.data;
            for (var e in r.data) {
                if (r.data[e] instanceof Array) {
                    for (var f in r.data[e]) {
                        i.push({
                            name: e,
                            value: r.data[e][f]
                        })
                    }
                } else {
                    i.push({
                        name: e,
                        value: r.data[e]
                    })
                }
            }
        }
        if (r.beforeSubmit && r.beforeSubmit(i, this, r) === false) {
            a("ajaxSubmit: submit aborted via beforeSubmit callback");
            return this
        }
        this.trigger("form-submit-validate", [i, this, r, t]);
        if (t.veto) {
            a("ajaxSubmit: submit vetoed via form-submit-validate trigger");
            return this
        }
        var d = b.param(i);
        if (r.type.toUpperCase() == "GET") {
            r.url += (r.url.indexOf("?") >= 0 ? "&" : "?") + d;
            r.data = null
        } else {
            r.data = d
        }
        var s = this,
            h = [];
        if (r.resetForm) {
            h.push(function () {
                s.resetForm()
            })
        }
        if (r.clearForm) {
            h.push(function () {
                s.clearForm()
            })
        }
        if (!r.dataType && r.target) {
            var m = r.success ||
            function () {};
            h.push(function (j) {
                b(r.target).html(j).each(m, arguments)
            })
        } else {
            if (r.success) {
                h.push(r.success)
            }
        }
        r.success = function (q, k) {
            for (var n = 0, j = h.length; n < j; n++) {
                h[n].apply(r, [q, k, s])
            }
        };
        var c = b("input:file", this).fieldValue();
        var o = false;
        for (var g = 0; g < c.length; g++) {
            if (c[g]) {
                o = true
            }
        }
        if (r.iframe || o) {
            if (b.browser.safari && r.closeKeepAlive) {
                b.get(r.closeKeepAlive, l)
            } else {
                l()
            }
        } else {
            b.ajax(r)
        }
        this.trigger("form-submit-notify", [this, r]);
        return this;

        function l() {
            var v = s[0];
            if (b(":input[name=submit]", v).length) {
                alert('Error: Form elements must not be named "submit".');
                return
            }
            var q = b.extend({}, b.ajaxSettings, r);
            var E = jQuery.extend(true, {}, b.extend(true, {}, b.ajaxSettings), q);
            var u = "jqFormIO" + (new Date().getTime());
            var A = b('<iframe id="' + u + '" name="' + u + '" />');
            var C = A[0];
            if (b.browser.msie || b.browser.opera) {
                C.src = 'javascript:false;document.write("");'
            }
            A.css({
                position: "absolute",
                top: "-1000px",
                left: "-1000px"
            });
            var D = {
                aborted: 0,
                responseText: null,
                responseXML: null,
                status: 0,
                statusText: "n/a",
                getAllResponseHeaders: function () {},
                getResponseHeader: function () {},
                setRequestHeader: function () {},
                abort: function () {
                    this.aborted = 1;
                    A.attr("src", "about:blank")
                }
            };
            var B = q.global;
            if (B && !b.active++) {
                b.event.trigger("ajaxStart")
            }
            if (B) {
                b.event.trigger("ajaxSend", [D, q])
            }
            if (E.beforeSend && E.beforeSend(D, E) === false) {
                E.global && jQuery.active--;
                return
            }
            if (D.aborted) {
                return
            }
            var k = 0;
            var x = 0;
            var j = v.clk;
            if (j) {
                var w = j.name;
                if (w && !j.disabled) {
                    r.extraData = r.extraData || {};
                    r.extraData[w] = j.value;
                    if (j.type == "image") {
                        r.extraData[name + ".x"] = v.clk_x;
                        r.extraData[name + ".y"] = v.clk_y
                    }
                }
            }
            setTimeout(function () {
                var H = s.attr("target"),
                    F = s.attr("action");
                s.attr({
                    target: u,
                    method: "POST",
                    action: q.url
                });
                if (!r.skipEncodingOverride) {
                    s.attr({
                        encoding: "multipart/form-data",
                        enctype: "multipart/form-data"
                    })
                }
                if (q.timeout) {
                    setTimeout(function () {
                        x = true;
                        y()
                    }, q.timeout)
                }
                var G = [];
                try {
                    if (r.extraData) {
                        for (var I in r.extraData) {
                            G.push(b('<input type="hidden" name="' + I + '" value="' + r.extraData[I] + '" />').appendTo(v)[0])
                        }
                    }
                    A.appendTo("body");
                    C.attachEvent ? C.attachEvent("onload", y) : C.addEventListener("load", y, false);
                    v.submit()
                } finally {
                    s.attr("action", F);
                    H ? s.attr("target", H) : s.removeAttr("target");
                    b(G).remove()
                }
            }, 10);

            function y() {
                if (k++) {
                    return
                }
                C.detachEvent ? C.detachEvent("onload", y) : C.removeEventListener("load", y, false);
                var F = 0;
                var G = true;
                try {
                    if (x) {
                        throw "timeout"
                    }
                    var H, J;
                    J = C.contentWindow ? C.contentWindow.document : C.contentDocument ? C.contentDocument : C.document;
                    if (J.body == null && !F && b.browser.opera) {
                        F = 1;
                        k--;
                        setTimeout(y, 100);
                        return
                    }
                    D.responseText = J.body ? J.body.innerHTML : null;
                    D.responseXML = J.XMLDocument ? J.XMLDocument : J;
                    D.getResponseHeader = function (L) {
                        var K = {
                            "content-type": q.dataType
                        };
                        return K[L]
                    };
                    if (q.dataType == "json" || q.dataType == "script") {
                        var n = J.getElementsByTagName("textarea")[0];
                        D.responseText = n ? n.value : D.responseText
                    } else {
                        if (q.dataType == "xml" && !D.responseXML && D.responseText != null) {
                            D.responseXML = z(D.responseText)
                        }
                    }
                    H = b.httpData(D, q.dataType)
                } catch (I) {
                    G = false;
                    b.handleError(q, D, "error", I)
                }
                if (G) {
                    q.success(H, "success");
                    if (B) {
                        b.event.trigger("ajaxSuccess", [D, q])
                    }
                }
                if (B) {
                    b.event.trigger("ajaxComplete", [D, q])
                }
                if (B && !--b.active) {
                    b.event.trigger("ajaxStop")
                }
                if (q.complete) {
                    q.complete(D, G ? "success" : "error")
                }
                setTimeout(function () {
                    A.remove();
                    D.responseXML = null
                }, 100)
            }
            function z(n, F) {
                if (window.ActiveXObject) {
                    F = new ActiveXObject("Microsoft.XMLDOM");
                    F.async = "false";
                    F.loadXML(n)
                } else {
                    F = (new DOMParser()).parseFromString(n, "text/xml")
                }
                return (F && F.documentElement && F.documentElement.tagName != "parsererror") ? F : null
            }
        }
    };
    b.fn.ajaxForm = function (c) {
        return this.ajaxFormUnbind().bind("submit.form-plugin", function () {
            b(this).ajaxSubmit(c);
            return false
        }).each(function () {
            b(":submit,input:image", this).bind("click.form-plugin", function (f) {
                var d = this.form;
                d.clk = this;
                if (this.type == "image") {
                    if (f.offsetX != undefined) {
                        d.clk_x = f.offsetX;
                        d.clk_y = f.offsetY
                    } else {
                        if (typeof b.fn.offset == "function") {
                            var g = b(this).offset();
                            d.clk_x = f.pageX - g.left;
                            d.clk_y = f.pageY - g.top
                        } else {
                            d.clk_x = f.pageX - this.offsetLeft;
                            d.clk_y = f.pageY - this.offsetTop
                        }
                    }
                }
                setTimeout(function () {
                    d.clk = d.clk_x = d.clk_y = null
                }, 10)
            })
        })
    };
    b.fn.ajaxFormUnbind = function () {
        this.unbind("submit.form-plugin");
        return this.each(function () {
            b(":submit,input:image", this).unbind("click.form-plugin")
        })
    };
    b.fn.formToArray = function (r) {
        var q = [];
        if (this.length == 0) {
            return q
        }
        var d = this[0];
        var h = r ? d.getElementsByTagName("*") : d.elements;
        if (!h) {
            return q
        }
        for (var k = 0, m = h.length; k < m; k++) {
            var e = h[k];
            var f = e.name;
            if (!f) {
                continue
            }
            if (r && d.clk && e.type == "image") {
                if (!e.disabled && d.clk == e) {
                    q.push({
                        name: f + ".x",
                        value: d.clk_x
                    }, {
                        name: f + ".y",
                        value: d.clk_y
                    })
                }
                continue
            }
            var s = b.fieldValue(e, true);
            if (s && s.constructor == Array) {
                for (var g = 0, c = s.length; g < c; g++) {
                    q.push({
                        name: f,
                        value: s[g]
                    })
                }
            } else {
                if (s !== null && typeof s != "undefined") {
                    q.push({
                        name: f,
                        value: s
                    })
                }
            }
        }
        if (!r && d.clk) {
            var l = d.getElementsByTagName("input");
            for (var k = 0, m = l.length; k < m; k++) {
                var o = l[k];
                var f = o.name;
                if (f && !o.disabled && o.type == "image" && d.clk == o) {
                    q.push({
                        name: f + ".x",
                        value: d.clk_x
                    }, {
                        name: f + ".y",
                        value: d.clk_y
                    })
                }
            }
        }
        return q
    };
    b.fn.formSerialize = function (c) {
        return b.param(this.formToArray(c))
    };
    b.fn.fieldSerialize = function (d) {
        var c = [];
        this.each(function () {
            var h = this.name;
            if (!h) {
                return
            }
            var f = b.fieldValue(this, d);
            if (f && f.constructor == Array) {
                for (var g = 0, e = f.length; g < e; g++) {
                    c.push({
                        name: h,
                        value: f[g]
                    })
                }
            } else {
                if (f !== null && typeof f != "undefined") {
                    c.push({
                        name: this.name,
                        value: f
                    })
                }
            }
        });
        return b.param(c)
    };
    b.fn.fieldValue = function (h) {
        for (var g = [], e = 0, c = this.length; e < c; e++) {
            var f = this[e];
            var d = b.fieldValue(f, h);
            if (d === null || typeof d == "undefined" || (d.constructor == Array && !d.length)) {
                continue
            }
            d.constructor == Array ? b.merge(g, d) : g.push(d)
        }
        return g
    };
    b.fieldValue = function (c, j) {
        var e = c.name,
            q = c.type,
            r = c.tagName.toLowerCase();
        if (typeof j == "undefined") {
            j = true
        }
        if (j && (!e || c.disabled || q == "reset" || q == "button" || (q == "checkbox" || q == "radio") && !c.checked || (q == "submit" || q == "image") && c.form && c.form.clk != c || r == "select" && c.selectedIndex == -1)) {
            return null
        }
        if (r == "select") {
            var k = c.selectedIndex;
            if (k < 0) {
                return null
            }
            var m = [],
                d = c.options;
            var g = (q == "select-one");
            var l = (g ? k + 1 : d.length);
            for (var f = (g ? k : 0); f < l; f++) {
                var h = d[f];
                if (h.selected) {
                    var o = b.browser.msie && !(h.attributes.value.specified) ? h.text : h.value;
                    if (g) {
                        return o
                    }
                    m.push(o)
                }
            }
            return m
        }
        return c.value
    };
    b.fn.clearForm = function () {
        return this.each(function () {
            b("input,select,textarea", this).clearFields()
        })
    };
    b.fn.clearFields = b.fn.clearInputs = function () {
        return this.each(function () {
            var d = this.type,
                c = this.tagName.toLowerCase();
            if (d == "text" || d == "password" || c == "textarea") {
                this.value = ""
            } else {
                if (d == "checkbox" || d == "radio") {
                    this.checked = false
                } else {
                    if (c == "select") {
                        this.selectedIndex = -1
                    }
                }
            }
        })
    };
    b.fn.resetForm = function () {
        return this.each(function () {
            if (typeof this.reset == "function" || (typeof this.reset == "object" && !this.reset.nodeType)) {
                this.reset()
            }
        })
    };
    b.fn.enable = function (c) {
        if (c == undefined) {
            c = true
        }
        return this.each(function () {
            this.disabled = !c
        })
    };
    b.fn.selected = function (c) {
        if (c == undefined) {
            c = true
        }
        return this.each(function () {
            var d = this.type;
            if (d == "checkbox" || d == "radio") {
                this.checked = c
            } else {
                if (this.tagName.toLowerCase() == "option") {
                    var e = b(this).parent("select");
                    if (c && e[0] && e[0].type == "select-one") {
                        e.find("option").selected(false)
                    }
                    this.selected = c
                }
            }
        })
    };

    function a() {
        if (b.fn.ajaxSubmit.debug && window.console && window.console.log) {
            window.console.log("[jquery.form] " + Array.prototype.join.call(arguments, ""))
        }
    }
})(jQuery);
$(document).ready(function () {
    Cufon.replace("h1, h1.quote, h2, h3, h4");
    Cufon.replace(".footerTitleSpan, #intro p");
    Cufon.replace(".sf-menu li span");
    Cufon.replace(".nivo-caption p, a.button-header span, .bottom-tab span");
    Cufon(".sf-menu li a.main", {
        hover: {
            color: "#333"
        }
    });
    $(".slideshow").cycle({
        fx: "shuffle",
        timeout: 0,
        speed: 800,
        shuffle: {
            top: 50,
            left: 770
        },
        pager: ".paging",
        cleartypeNoBg: true,
        cssBefore: {
            left: 15
        }
    });
    var f = 55;
    $(".item .nav-container .nav").each(function (h) {
        if (h == 0) {} else {
            var j = f + "px";
            $(this).css({
                "margin-top": j
            });
            f = f + 55
        }
    });
    var c = 0;
    var e = 0;
    var g = c;
    var b = 0;
    var a = 0;
    $(".paging a").click(function () {
        if ($(this).attr("class") == "nav-overlap activeSlide") {
            var h = $(".item").eq($(this).text()).find(".nav span img").attr("src");
            $(".item").eq($(this).text()).find(".nav a.thumb span").css({
                background: "url(" + h + ") no-repeat center bottom"
            });
            $(".item").eq($(this).text()).find(".nav span img").stop().fadeTo("normal", 0, function () {
                $(this).hide()
            })
        } else {
            a = parseInt($(this).text())
        }
    });
    $(".paging a").hover(function () {
        b = parseInt($(this).text());
        var h = 0;
        $(".item").each(function () {
            c = $(this).css("z-index");
            if (parseInt(c) >= parseInt(g)) {
                g = c;
                e = h
            }
            h++
        });
        if ($(this).attr("class") != "nav-overlap activeSlide") {
            if (parseInt(e) == parseInt(b)) {} else {
                $(".item").eq($(this).text()).animate({
                    left: "+=15px"
                }, "fast");
                $(this).animate({
                    width: "+=15px"
                }, "fast")
            }
        }
        if (($(this).attr("class") == "nav-overlap") && (b == e) && (b != a)) {
            $(".item").eq($(this).text()).animate({
                left: "+=15px"
            }, "fast");
            $(this).animate({
                width: "+=15px"
            }, "fast")
        }
        $(".nav a").eq($(this).text()).trigger("mouseover");
        $(".nav").eq($(this).text()).trigger("mouseover")
    }, function () {
        b = parseInt($(this).text());
        var h = 0;
        e = 0;
        $(".item").each(function () {
            c = $(this).css("z-index");
            if (parseInt(c) >= parseInt(g)) {
                g = c;
                e = h
            }
            h++
        });
        if ($(this).attr("class") != "nav-overlap activeSlide") {
            $(".item").eq($(this).text()).animate({
                left: "0px"
            }, "fast")
        }
        $(this).animate({
            width: "40px"
        }, "fast");
        $(".nav a").eq($(this).text()).trigger("mouseout");
        $(".nav").eq($(this).text()).trigger("mouseout")
    });
    var d = $(".item").eq(0).find(".nav span img").attr("src");
    $(".item").eq(0).find(".nav a.thumb span").css({
        background: "url(" + d + ") no-repeat center bottom"
    });
    $(".item").eq(0).find(".nav span img").stop().fadeTo("normal", 0, function () {
        $(this).hide()
    });
    $(".nav").hover(function () {
        var h = $(this).find("img").attr("src");
        $(this).find("a.thumb span").css({
            background: "url(" + h + ") no-repeat center bottom"
        });
        $(this).find("span img").stop().fadeTo("normal", 0, function () {
            $(this).hide()
        })
    }, function () {
        if ((parseInt(b) == parseInt(a)) && (parseInt(a) == parseInt(e))) {} else {
            if (parseInt(b) == parseInt(e)) {} else {
                if (parseInt(b) == parseInt(a)) {
                    $(this).find("span img").stop().fadeTo("normal", 1).show()
                } else {
                    $(this).find("span img").stop().fadeTo("normal", 1).show()
                }
            }
        }
    });
    $(".grayscale").hover(function () {
        var h = $(this).find("img").attr("src");
        $(this).find("span").css({
            background: "url(" + h + ") no-repeat center bottom"
        });
        $(this).find("span img").stop().fadeTo("normal", 0, function () {
            $(this).hide()
        })
    }, function () {
        $(this).find("span img").stop().fadeTo("normal", 1).show()
    });
    $(".connect").hover(function () {
        $(this).find("a").animate({
            left: "+=10px"
        }, "fast");
        var h = $(this).find(".icon img").attr("src");
        $(this).find(".icon").css({
            background: "url(" + h + ") no-repeat center bottom"
        });
        $(this).find(".icon img").stop().fadeTo("normal", 0, function () {
            $(this).hide()
        })
    }, function () {
        $(this).find("a").animate({
            left: "-=10px"
        }, "fast");
        $(this).find(".icon img").stop().fadeTo("normal", 1).show()
    });
    $(".progressValue").each(function () {
        var h = $(this).find("span").text();
        h = parseFloat(h);
        h = h - 100;
        var i = "" + h + "px 2px";
        $(this).css("backgroundPosition", i);
        if ($(this).find("span").attr("title")) {
            $(this).find("span").html($(this).find("span").attr("title"))
        }
    })
});
var Cufon = (function () {
    var e = function () {
            return e.replace.apply(null, arguments)
        };
    var v = e.DOM = {
        ready: (function () {
            var M = false,
                O = {
                    loaded: 1,
                    complete: 1
                };
            var L = [],
                N = function () {
                    if (M) {
                        return
                    }
                    M = true;
                    for (var P; P = L.shift(); P()) {}
                };
            if (document.addEventListener) {
                document.addEventListener("DOMContentLoaded", N, false);
                window.addEventListener("pageshow", N, false)
            }
            if (!window.opera && document.readyState) {
                (function () {
                    O[document.readyState] ? N() : setTimeout(arguments.callee, 10)
                })()
            }
            if (document.readyState && document.createStyleSheet) {
                (function () {
                    try {
                        document.body.doScroll("left");
                        N()
                    } catch (P) {
                        setTimeout(arguments.callee, 1)
                    }
                })()
            }
            i(window, "load", N);
            return function (P) {
                if (!arguments.length) {
                    N()
                } else {
                    M ? P() : L.push(P)
                }
            }
        })(),
        root: function () {
            return document.documentElement || document.body
        },
        strict: (function () {
            var L;
            if (document.compatMode == "BackCompat") {
                return false
            }
            L = document.doctype;
            if (L) {
                return !/frameset|transitional/i.test(L.publicId)
            }
            L = document.firstChild;
            if (L.nodeType != 8 || /^DOCTYPE.+(transitional|frameset)/i.test(L.data)) {
                return false
            }
            return true
        })()
    };
    var q = e.CSS = {
        Size: function (M, L) {
            this.value = parseFloat(M);
            this.unit = String(M).match(/[a-z%]*$/)[0] || "px";
            this.convert = function (N) {
                return N / L * this.value
            };
            this.convertFrom = function (N) {
                return N / this.value * L
            };
            this.toString = function () {
                return this.value + this.unit
            }
        },
        addClass: function (M, L) {
            var N = M.className;
            M.className = N + (N && " ") + L;
            return M
        },
        color: g(function (M) {
            var L = {};
            L.color = M.replace(/^rgba\((.*?),\s*([\d.]+)\)/, function (O, N, P) {
                L.opacity = parseFloat(P);
                return "rgb(" + N + ")"
            });
            return L
        }),
        fontStretch: g(function (L) {
            if (typeof L == "number") {
                return L
            }
            if (/%$/.test(L)) {
                return parseFloat(L) / 100
            }
            return {
                "ultra-condensed": 0.5,
                "extra-condensed": 0.625,
                condensed: 0.75,
                "semi-condensed": 0.875,
                "semi-expanded": 1.125,
                expanded: 1.25,
                "extra-expanded": 1.5,
                "ultra-expanded": 2
            }[L] || 1
        }),
        getStyle: function (M) {
            var L = document.defaultView;
            if (L && L.getComputedStyle) {
                return new A(L.getComputedStyle(M, null))
            }
            if (M.currentStyle) {
                return new A(M.currentStyle)
            }
            return new A(M.style)
        },
        gradient: g(function (P) {
            var Q = {
                id: P,
                type: P.match(/^-([a-z]+)-gradient\(/)[1],
                stops: []
            },
                M = P.substr(P.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);
            for (var O = 0, L = M.length, N; O < L; ++O) {
                N = M[O].split("=", 2).reverse();
                Q.stops.push([N[1] || O / (L - 1), N[0]])
            }
            return Q
        }),
        quotedList: g(function (O) {
            var N = [],
                M = /\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g,
                L;
            while (L = M.exec(O)) {
                N.push(L[3] || L[1])
            }
            return N
        }),
        recognizesMedia: g(function (Q) {
            var O = document.createElement("style"),
                N, M, L;
            O.type = "text/css";
            O.media = Q;
            try {
                O.appendChild(document.createTextNode("/**/"))
            } catch (P) {}
            M = f("head")[0];
            M.insertBefore(O, M.firstChild);
            N = (O.sheet || O.styleSheet);
            L = N && !N.disabled;
            M.removeChild(O);
            return L
        }),
        removeClass: function (N, M) {
            var L = RegExp("(?:^|\\s+)" + M + "(?=\\s|$)", "g");
            N.className = N.className.replace(L, "");
            return N
        },
        supports: function (N, M) {
            var L = document.createElement("span").style;
            if (L[N] === undefined) {
                return false
            }
            L[N] = M;
            return L[N] === M
        },
        textAlign: function (O, N, L, M) {
            if (N.get("textAlign") == "right") {
                if (L > 0) {
                    O = " " + O
                }
            } else {
                if (L < M - 1) {
                    O += " "
                }
            }
            return O
        },
        textShadow: g(function (P) {
            if (P == "none") {
                return null
            }
            var O = [],
                Q = {},
                L, M = 0;
            var N = /(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig;
            while (L = N.exec(P)) {
                if (L[0] == ",") {
                    O.push(Q);
                    Q = {};
                    M = 0
                } else {
                    if (L[1]) {
                        Q.color = L[1]
                    } else {
                        Q[["offX", "offY", "blur"][M++]] = L[2]
                    }
                }
            }
            O.push(Q);
            return O
        }),
        textTransform: (function () {
            var L = {
                uppercase: function (M) {
                    return M.toUpperCase()
                },
                lowercase: function (M) {
                    return M.toLowerCase()
                },
                capitalize: function (M) {
                    return M.replace(/(?:^|\s)./g, function (N) {
                        return N.toUpperCase()
                    })
                }
            };
            return function (O, N) {
                var M = L[N.get("textTransform")];
                return M ? M(O) : O
            }
        })(),
        whiteSpace: (function () {
            var N = {
                inline: 1,
                "inline-block": 1,
                "run-in": 1
            };
            var M = /^\s+/,
                L = /\s+$/;
            return function (R, P, Q, O, S) {
                if (S) {
                    return R.replace(M, "").replace(L, "")
                }
                if (O) {
                    if (O.nodeName.toLowerCase() == "br") {
                        R = R.replace(M, "")
                    }
                }
                if (N[P.get("display")]) {
                    return R
                }
                if (!Q.previousSibling) {
                    R = R.replace(M, "")
                }
                if (!Q.nextSibling) {
                    R = R.replace(L, "")
                }
                return R
            }
        })()
    };
    q.ready = (function () {
        var L = !q.recognizesMedia("all"),
            P = false;
        var O = [],
            S = function () {
                L = true;
                for (var V; V = O.shift(); V()) {}
            };
        var T = f("link"),
            U = f("style");
        var M = {
            "": 1,
            "text/css": 1
        };

        function N(V) {
            if (!M[V.type.toLowerCase()]) {
                return true
            }
            return V.disabled || R(V.sheet, V.media || "screen")
        }
        function R(X, aa) {
            if (!q.recognizesMedia(aa || "all")) {
                return true
            }
            if (!X || X.disabled) {
                return false
            }
            try {
                var ab = X.cssRules,
                    Z;
                if (ab) {
                    search: for (var W = 0, V = ab.length; Z = ab[W], W < V; ++W) {
                        switch (Z.type) {
                        case 2:
                            break;
                        case 3:
                            if (!R(Z.styleSheet, Z.media.mediaText)) {
                                return false
                            }
                            break;
                        default:
                            break search
                        }
                    }
                }
            } catch (Y) {}
            return true
        }
        function Q() {
            if (document.createStyleSheet) {
                return true
            }
            var W, V;
            for (V = 0; W = T[V]; ++V) {
                if (W.rel.toLowerCase() == "stylesheet" && !N(W)) {
                    return false
                }
            }
            for (V = 0; W = U[V]; ++V) {
                if (!N(W)) {
                    return false
                }
            }
            return true
        }
        v.ready(function () {
            if (!P) {
                P = q.getStyle(document.body).isUsable()
            }
            if (L || (P && Q())) {
                S()
            } else {
                setTimeout(arguments.callee, 10)
            }
        });
        return function (V) {
            if (L) {
                V()
            } else {
                O.push(V)
            }
        }
    })();

    function D(N) {
        var M = this.face = N.face,
            L = {
                "\u0020": 1,
                "\u00a0": 1,
                "\u3000": 1
            };
        this.glyphs = (function (Q) {
            var P, O = {
                "\u2011": "\u002d",
                "\u00ad": "\u2011"
            };
            for (P in O) {
                if (!k(O, P)) {
                    continue
                }
                if (!Q[P]) {
                    Q[P] = Q[O[P]]
                }
            }
            return Q
        })(N.glyphs);
        this.w = N.w;
        this.baseSize = parseInt(M["units-per-em"], 10);
        this.family = M["font-family"].toLowerCase();
        this.weight = M["font-weight"];
        this.style = M["font-style"] || "normal";
        this.viewBox = (function () {
            var P = M.bbox.split(/\s+/);
            var O = {
                minX: parseInt(P[0], 10),
                minY: parseInt(P[1], 10),
                maxX: parseInt(P[2], 10),
                maxY: parseInt(P[3], 10)
            };
            O.width = O.maxX - O.minX;
            O.height = O.maxY - O.minY;
            O.toString = function () {
                return [this.minX, this.minY, this.width, this.height].join(" ")
            };
            return O
        })();
        this.ascent = -parseInt(M.ascent, 10);
        this.descent = -parseInt(M.descent, 10);
        this.height = -this.ascent + this.descent;
        this.spacing = function (V, Y, O) {
            var Z = this.glyphs,
                W, U, Q, aa = [],
                P = 0,
                X, T = -1,
                S = -1,
                R;
            while (R = V[++T]) {
                W = Z[R] || this.missingGlyph;
                if (!W) {
                    continue
                }
                if (U) {
                    P -= Q = U[R] || 0;
                    aa[S] -= Q
                }
                X = W.w;
                if (isNaN(X)) {
                    X = +this.w
                }
                if (X > 0) {
                    X += Y;
                    if (L[R]) {
                        X += O
                    }
                }
                P += aa[++S] = ~~X;
                U = W.k
            }
            aa.total = P;
            return aa
        }
    }
    function s() {
        var M = {},
            L = {
                oblique: "italic",
                italic: "oblique"
            };
        this.add = function (N) {
            (M[N.style] || (M[N.style] = {}))[N.weight] = N
        };
        this.get = function (R, S) {
            var Q = M[R] || M[L[R]] || M.normal || M.italic || M.oblique;
            if (!Q) {
                return null
            }
            S = {
                normal: 400,
                bold: 700
            }[S] || parseInt(S, 10);
            if (Q[S]) {
                return Q[S]
            }
            var O = {
                1: 1,
                99: 0
            }[S % 100],
                U = [],
                P, N;
            if (O === undefined) {
                O = S > 400
            }
            if (S == 500) {
                S = 400
            }
            for (var T in Q) {
                if (!k(Q, T)) {
                    continue
                }
                T = parseInt(T, 10);
                if (!P || T < P) {
                    P = T
                }
                if (!N || T > N) {
                    N = T
                }
                U.push(T)
            }
            if (S < P) {
                S = P
            }
            if (S > N) {
                S = N
            }
            U.sort(function (W, V) {
                return (O ? (W >= S && V >= S) ? W < V : W > V : (W <= S && V <= S) ? W > V : W < V) ? -1 : 1
            });
            return Q[U[0]]
        }
    }
    function n() {
        function N(P, R) {
            try {
                if (P.contains) {
                    return P.contains(R)
                }
                return P.compareDocumentPosition(R) & 16
            } catch (Q) {}
            return false
        }
        function L(Q) {
            var P = Q.relatedTarget;
            if (P && N(this, P)) {
                return
            }
            M(this, Q.type == "mouseover")
        }
        function O(P) {
            if (!P) {
                P = window.event
            }
            M(P.target || P.srcElement, P.type == "mouseenter")
        }
        function M(P, Q) {
            setTimeout(function () {
                var R = d.get(P).options;
                if (Q) {
                    R = C(R, R.hover);
                    R._mediatorMode = 1
                }
                e.replace(P, R, true)
            }, 10)
        }
        this.attach = function (P) {
            if (P.onmouseenter === undefined) {
                i(P, "mouseover", L);
                i(P, "mouseout", L)
            } else {
                i(P, "mouseenter", O);
                i(P, "mouseleave", O)
            }
        };
        this.detach = function (P) {
            if (P.onmouseenter === undefined) {
                c(P, "mouseover", L);
                c(P, "mouseout", L)
            } else {
                c(P, "mouseenter", O);
                c(P, "mouseleave", O)
            }
        }
    }
    function w() {
        var M = [],
            N = {};

        function L(R) {
            var O = [],
                Q;
            for (var P = 0; Q = R[P]; ++P) {
                O[P] = M[N[Q]]
            }
            return O
        }
        this.add = function (P, O) {
            N[P] = M.push(O) - 1
        };
        this.repeat = function () {
            var O = arguments.length ? L(arguments) : M,
                P;
            for (var Q = 0; P = O[Q++];) {
                e.replace(P[0], P[1], true)
            }
        }
    }
    function z() {
        var N = {},
            L = 0;

        function M(O) {
            return O.cufid || (O.cufid = ++L)
        }
        this.get = function (O) {
            var P = M(O);
            return N[P] || (N[P] = {})
        }
    }
    function A(L) {
        var N = {},
            M = {};
        this.extend = function (O) {
            for (var P in O) {
                if (k(O, P)) {
                    N[P] = O[P]
                }
            }
            return this
        };
        this.get = function (O) {
            return N[O] != undefined ? N[O] : L[O]
        };
        this.getSize = function (P, O) {
            return M[P] || (M[P] = new q.Size(this.get(P), O))
        };
        this.isUsable = function () {
            return !!L
        }
    }
    function i(M, L, N) {
        if (M.addEventListener) {
            M.addEventListener(L, N, false)
        } else {
            if (M.attachEvent) {
                M.attachEvent("on" + L, N)
            }
        }
    }
    function r(N, M) {
        if (M._mediatorMode) {
            return N
        }
        var O = d.get(N);
        var L = O.options;
        if (L) {
            if (L === M) {
                return N
            }
            if (L.hover) {
                u.detach(N)
            }
        }
        if (M.hover && M.hoverables[N.nodeName.toLowerCase()]) {
            u.attach(N)
        }
        O.options = M;
        return N
    }
    function g(L) {
        var M = {};
        return function (N) {
            if (!k(M, N)) {
                M[N] = L.apply(null, arguments)
            }
            return M[N]
        }
    }
    function t(P, O) {
        var L = q.quotedList(O.get("fontFamily").toLowerCase()),
            N;
        for (var M = 0; N = L[M]; ++M) {
            if (G[N]) {
                return G[N].get(O.get("fontStyle"), O.get("fontWeight"))
            }
        }
        return null
    }
    function f(L) {
        return document.getElementsByTagName(L)
    }
    function k(M, L) {
        return M.hasOwnProperty(L)
    }
    function C() {
        var M = {},
            L, P;
        for (var O = 0, N = arguments.length; L = arguments[O], O < N; ++O) {
            for (P in L) {
                if (k(L, P)) {
                    M[P] = L[P]
                }
            }
        }
        return M
    }
    function J(O, W, M, X, P, N) {
        var U = document.createDocumentFragment(),
            R;
        if (W === "") {
            return U
        }
        var V = X.separate;
        var S = W.split(y[V]),
            L = (V == "words");
        if (L && x) {
            if (/^\s/.test(W)) {
                S.unshift("")
            }
            if (/\s$/.test(W)) {
                S.push("")
            }
        }
        for (var T = 0, Q = S.length; T < Q; ++T) {
            R = b[X.engine](O, L ? q.textAlign(S[T], M, T, Q) : S[T], M, X, P, N, T < Q - 1);
            if (R) {
                U.appendChild(R)
            }
        }
        return U
    }
    function c(M, L, N) {
        if (M.removeEventListener) {
            M.removeEventListener(L, N, false)
        } else {
            if (M.detachEvent) {
                M.detachEvent("on" + L, N)
            }
        }
    }
    function I(M, O) {
        var ad = M.nodeName.toLowerCase();
        if (O.ignore[ad]) {
            return
        }
        if (O.ignoreClass && O.ignoreClass.test(M.className)) {
            return
        }
        if (O.onBeforeReplace) {
            O.onBeforeReplace(M, O)
        }
        var ac = !O.textless[ad],
            Z = (O.trim === "simple");
        var aa = q.getStyle(r(M, O)).extend(O);
        if (parseFloat(aa.get("fontSize")) === 0) {
            return
        }
        var V = t(M, aa),
            Y, P, W, R, U, ab;
        var X = O.softHyphens,
            T = false,
            Q, S, N = /\u00ad/g;
        var L = O.modifyText;
        if (!V) {
            return
        }
        for (Y = M.firstChild; Y; Y = W) {
            P = Y.nodeType;
            W = Y.nextSibling;
            if (ac && P == 3) {
                if (X && M.nodeName.toLowerCase() != o) {
                    Q = Y.data.indexOf("\u00ad");
                    if (Q >= 0) {
                        Y.splitText(Q);
                        W = Y.nextSibling;
                        W.deleteData(0, 1);
                        S = document.createElement(o);
                        S.appendChild(document.createTextNode("\u00ad"));
                        M.insertBefore(S, W);
                        W = S;
                        T = true
                    }
                }
                if (R) {
                    R.appendData(Y.data);
                    M.removeChild(Y)
                } else {
                    R = Y
                }
                if (W) {
                    continue
                }
            }
            if (R) {
                U = R.data;
                if (!X) {
                    U = U.replace(N, "")
                }
                U = q.whiteSpace(U, aa, R, ab, Z);
                if (L) {
                    U = L(U, R, M, O)
                }
                M.replaceChild(J(V, U, aa, O, Y, M), R);
                R = null
            }
            if (P == 1) {
                if (Y.firstChild) {
                    if (Y.nodeName.toLowerCase() == "cufon") {
                        b[O.engine](V, null, aa, O, Y, M)
                    } else {
                        arguments.callee(Y, O)
                    }
                }
                ab = Y
            }
        }
        if (X && T) {
            E(M);
            if (!l) {
                i(window, "resize", j)
            }
            l = true
        }
        if (O.onAfterReplace) {
            O.onAfterReplace(M, O)
        }
    }
    function E(M) {
        var R, S, T, Q, L, P, N, O;
        R = M.getElementsByTagName(o);
        for (O = 0; S = R[O]; ++O) {
            S.className = h;
            Q = T = S.parentNode;
            if (Q.nodeName.toLowerCase() != p) {
                L = document.createElement(p);
                L.appendChild(S.previousSibling);
                T.insertBefore(L, S);
                L.appendChild(S)
            } else {
                Q = Q.parentNode;
                if (Q.nodeName.toLowerCase() == p) {
                    T = Q.parentNode;
                    while (Q.firstChild) {
                        T.insertBefore(Q.firstChild, Q)
                    }
                    T.removeChild(Q)
                }
            }
        }
        for (O = 0; S = R[O]; ++O) {
            S.className = "";
            Q = S.parentNode;
            T = Q.parentNode;
            P = Q.nextSibling || T.nextSibling;
            N = (P.nodeName.toLowerCase() == p) ? Q : S.previousSibling;
            if (N.offsetTop >= P.offsetTop) {
                S.className = h;
                if (N.offsetTop < P.offsetTop) {
                    L = document.createElement(p);
                    T.insertBefore(L, Q);
                    L.appendChild(Q);
                    L.appendChild(P)
                }
            }
        }
    }
    function j() {
        if (B) {
            return
        }
        q.addClass(v.root(), K);
        clearTimeout(a);
        a = setTimeout(function () {
            B = true;
            q.removeClass(v.root(), K);
            E(document);
            B = false
        }, 100)
    }
    var x = " ".split(/\s+/).length == 0;
    var p = "cufonglue";
    var o = "cufonshy";
    var h = "cufon-shy-disabled";
    var K = "cufon-viewport-resizing";
    var d = new z();
    var u = new n();
    var H = new w();
    var m = false;
    var l = false;
    var a;
    var B = false;
    var b = {},
        G = {},
        F = {
            autoDetect: false,
            engine: null,
            forceHitArea: false,
            hover: false,
            hoverables: {
                a: true
            },
            ignore: {
                applet: 1,
                canvas: 1,
                col: 1,
                colgroup: 1,
                head: 1,
                iframe: 1,
                map: 1,
                noscript: 1,
                optgroup: 1,
                option: 1,
                script: 1,
                select: 1,
                style: 1,
                textarea: 1,
                title: 1,
                pre: 1
            },
            ignoreClass: null,
            modifyText: null,
            onAfterReplace: null,
            onBeforeReplace: null,
            printable: true,
            selector: (window.Sizzle || (window.jQuery &&
            function (L) {
                return jQuery(L)
            }) || (window.dojo && dojo.query) || (window.glow && glow.dom && glow.dom.get) || (window.Ext && Ext.query) || (window.YAHOO && YAHOO.util && YAHOO.util.Selector && YAHOO.util.Selector.query) || (window.$$ &&
            function (L) {
                return $$(L)
            }) || (window.$ &&
            function (L) {
                return $(L)
            }) || (document.querySelectorAll &&
            function (L) {
                return document.querySelectorAll(L)
            }) || f),
            separate: "words",
            softHyphens: true,
            textless: {
                dl: 1,
                html: 1,
                ol: 1,
                table: 1,
                tbody: 1,
                thead: 1,
                tfoot: 1,
                tr: 1,
                ul: 1
            },
            textShadow: "none",
            trim: "advanced"
        };
    var y = {
        words: /\s/.test("\u00a0") ? /[^\S\u00a0]+/ : /\s+/,
        characters: "",
        none: /^/
    };
    e.now = function () {
        v.ready();
        return e
    };
    e.refresh = function () {
        H.repeat.apply(H, arguments);
        return e
    };
    e.registerEngine = function (M, L) {
        if (!L) {
            return e
        }
        b[M] = L;
        return e.set("engine", M)
    };
    e.registerFont = function (N) {
        if (!N) {
            return e
        }
        var L = new D(N),
            M = L.family;
        if (!G[M]) {
            G[M] = new s()
        }
        G[M].add(L);
        return e.set("fontFamily", '"' + M + '"')
    };
    e.replace = function (N, M, L) {
        M = C(F, M);
        if (!M.engine) {
            return e
        }
        if (!m) {
            q.addClass(v.root(), "cufon-active cufon-loading");
            q.ready(function () {
                q.addClass(q.removeClass(v.root(), "cufon-loading"), "cufon-ready")
            });
            m = true
        }
        if (M.hover) {
            M.forceHitArea = true
        }
        if (M.autoDetect) {
            delete M.fontFamily
        }
        if (typeof M.ignoreClass == "string") {
            M.ignoreClass = new RegExp("(?:^|\\s)(?:" + M.ignoreClass.replace(/\s+/g, "|") + ")(?:\\s|$)")
        }
        if (typeof M.textShadow == "string") {
            M.textShadow = q.textShadow(M.textShadow)
        }
        if (typeof M.color == "string" && /^-/.test(M.color)) {
            M.textGradient = q.gradient(M.color)
        } else {
            delete M.textGradient
        }
        if (typeof N == "string") {
            if (!L) {
                H.add(N, arguments)
            }
            N = [N]
        } else {
            if (N.nodeType) {
                N = [N]
            }
        }
        q.ready(function () {
            for (var P = 0, O = N.length; P < O; ++P) {
                var Q = N[P];
                if (typeof Q == "string") {
                    e.replace(M.selector(Q), M, true)
                } else {
                    I(Q, M)
                }
            }
        });
        return e
    };
    e.set = function (L, M) {
        F[L] = M;
        return e
    };
    return e
})();
Cufon.registerEngine("vml", (function () {
    var e = document.namespaces;
    if (!e) {
        return
    }
    e.add("cvml", "urn:schemas-microsoft-com:vml");
    e = null;
    var b = document.createElement("cvml:shape");
    b.style.behavior = "url(#default#VML)";
    if (!b.coordsize) {
        return
    }
    b = null;
    var h = (document.documentMode || 0) < 8;
    document.write(('<style type="text/css">cufoncanvas{text-indent:0;}@media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:' + (h ? "middle" : "text-bottom") + ";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;text-align:left;}cufonshy.cufon-shy-disabled,.cufon-viewport-resizing cufonshy{display:none;}cufonglue{white-space:nowrap;display:inline-block;}.cufon-viewport-resizing cufonglue{white-space:normal;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g, "!important;"));

    function c(i, j) {
        return a(i, /(?:em|ex|%)$|^[a-z-]+$/i.test(j) ? "1em" : j)
    }
    function a(l, m) {
        if (!isNaN(m) || /px$/i.test(m)) {
            return parseFloat(m)
        }
        var k = l.style.left,
            j = l.runtimeStyle.left;
        l.runtimeStyle.left = l.currentStyle.left;
        l.style.left = m.replace("%", "em");
        var i = l.style.pixelLeft;
        l.style.left = k;
        l.runtimeStyle.left = j;
        return i
    }
    function f(l, k, j, n) {
        var i = "computed" + n,
            m = k[i];
        if (isNaN(m)) {
            m = k.get(n);
            k[i] = m = (m == "normal") ? 0 : ~~j.convertFrom(a(l, m))
        }
        return m
    }
    var g = {};

    function d(p) {
        var q = p.id;
        if (!g[q]) {
            var n = p.stops,
                o = document.createElement("cvml:fill"),
                i = [];
            o.type = "gradient";
            o.angle = 180;
            o.focus = "0";
            o.method = "none";
            o.color = n[0][1];
            for (var m = 1, l = n.length - 1; m < l; ++m) {
                i.push(n[m][0] * 100 + "% " + n[m][1])
            }
            o.colors = i.join(",");
            o.color2 = n[l][1];
            g[q] = o
        }
        return g[q]
    }
    return function (ac, G, Y, C, K, ad, W) {
        var n = (G === null);
        if (n) {
            G = K.alt
        }
        var I = ac.viewBox;
        var p = Y.computedFontSize || (Y.computedFontSize = new Cufon.CSS.Size(c(ad, Y.get("fontSize")) + "px", ac.baseSize));
        var y, q;
        if (n) {
            y = K;
            q = K.firstChild
        } else {
            y = document.createElement("cufon");
            y.className = "cufon cufon-vml";
            y.alt = G;
            q = document.createElement("cufoncanvas");
            y.appendChild(q);
            if (C.printable) {
                var Z = document.createElement("cufontext");
                Z.appendChild(document.createTextNode(G));
                y.appendChild(Z)
            }
            if (!W) {
                y.appendChild(document.createElement("cvml:shape"))
            }
        }
        var ai = y.style;
        var R = q.style;
        var l = p.convert(I.height),
            af = Math.ceil(l);
        var V = af / l;
        var P = V * Cufon.CSS.fontStretch(Y.get("fontStretch"));
        var U = I.minX,
            T = I.minY;
        R.height = af;
        R.top = Math.round(p.convert(T - ac.ascent));
        R.left = Math.round(p.convert(U));
        ai.height = p.convert(ac.height) + "px";
        var F = Y.get("color");
        var ag = Cufon.CSS.textTransform(G, Y).split("");
        var L = ac.spacing(ag, f(ad, Y, p, "letterSpacing"), f(ad, Y, p, "wordSpacing"));
        if (!L.length) {
            return null
        }
        var k = L.total;
        var x = -U + k + (I.width - L[L.length - 1]);
        var ah = p.convert(x * P),
            X = Math.round(ah);
        var O = x + "," + I.height,
            m;
        var J = "r" + O + "ns";
        var u = C.textGradient && d(C.textGradient);
        var o = ac.glyphs,
            S = 0;
        var H = C.textShadow;
        var ab = -1,
            aa = 0,
            w;
        while (w = ag[++ab]) {
            var D = o[ag[ab]] || ac.missingGlyph,
                v;
            if (!D) {
                continue
            }
            if (n) {
                v = q.childNodes[aa];
                while (v.firstChild) {
                    v.removeChild(v.firstChild)
                }
            } else {
                v = document.createElement("cvml:shape");
                q.appendChild(v)
            }
            v.stroked = "f";
            v.coordsize = O;
            v.coordorigin = m = (U - S) + "," + T;
            v.path = (D.d ? "m" + D.d + "xe" : "") + "m" + m + J;
            v.fillcolor = F;
            if (u) {
                v.appendChild(u.cloneNode(false))
            }
            var ae = v.style;
            ae.width = X;
            ae.height = af;
            if (H) {
                var s = H[0],
                    r = H[1];
                var B = Cufon.CSS.color(s.color),
                    z;
                var N = document.createElement("cvml:shadow");
                N.on = "t";
                N.color = B.color;
                N.offset = s.offX + "," + s.offY;
                if (r) {
                    z = Cufon.CSS.color(r.color);
                    N.type = "double";
                    N.color2 = z.color;
                    N.offset2 = r.offX + "," + r.offY
                }
                N.opacity = B.opacity || (z && z.opacity) || 1;
                v.appendChild(N)
            }
            S += L[aa++]
        }
        var M = v.nextSibling,
            t, A;
        if (C.forceHitArea) {
            if (!M) {
                M = document.createElement("cvml:rect");
                M.stroked = "f";
                M.className = "cufon-vml-cover";
                t = document.createElement("cvml:fill");
                t.opacity = 0;
                M.appendChild(t);
                q.appendChild(M)
            }
            A = M.style;
            A.width = X;
            A.height = af
        } else {
            if (M) {
                q.removeChild(M)
            }
        }
        ai.width = Math.max(Math.ceil(p.convert(k * P)), 0);
        if (h) {
            var Q = Y.computedYAdjust;
            if (Q === undefined) {
                var E = Y.get("lineHeight");
                if (E == "normal") {
                    E = "1em"
                } else {
                    if (!isNaN(E)) {
                        E += "em"
                    }
                }
                Y.computedYAdjust = Q = 0.5 * (a(ad, E) - parseFloat(ai.height))
            }
            if (Q) {
                ai.marginTop = Math.ceil(Q) + "px";
                ai.marginBottom = Q + "px"
            }
        }
        return y
    }
})());
Cufon.registerEngine("canvas", (function () {
    var b = document.createElement("canvas");
    if (!b || !b.getContext || !b.getContext.apply) {
        return
    }
    b = null;
    var a = Cufon.CSS.supports("display", "inline-block");
    var e = !a && (document.compatMode == "BackCompat" || /frameset|transitional/i.test(document.doctype.publicId));
    var f = document.createElement("style");
    f.type = "text/css";
    f.appendChild(document.createTextNode(("cufon{text-indent:0;}@media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;" + (e ? "" : "font-size:1px;line-height:1px;") + "}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;text-align:left;text-indent:-10000in;}" + (a ? "cufon canvas{position:relative;}" : "cufon canvas{position:absolute;}") + "cufonshy.cufon-shy-disabled,.cufon-viewport-resizing cufonshy{display:none;}cufonglue{white-space:nowrap;display:inline-block;}.cufon-viewport-resizing cufonglue{white-space:normal;}}@media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g, "!important;")));
    document.getElementsByTagName("head")[0].appendChild(f);

    function d(p, h) {
        var n = 0,
            m = 0;
        var g = [],
            o = /([mrvxe])([^a-z]*)/g,
            k;
        generate: for (var j = 0; k = o.exec(p); ++j) {
            var l = k[2].split(",");
            switch (k[1]) {
            case "v":
                g[j] = {
                    m: "bezierCurveTo",
                    a: [n + ~~l[0], m + ~~l[1], n + ~~l[2], m + ~~l[3], n += ~~l[4], m += ~~l[5]]
                };
                break;
            case "r":
                g[j] = {
                    m: "lineTo",
                    a: [n += ~~l[0], m += ~~l[1]]
                };
                break;
            case "m":
                g[j] = {
                    m: "moveTo",
                    a: [n = ~~l[0], m = ~~l[1]]
                };
                break;
            case "x":
                g[j] = {
                    m: "closePath"
                };
                break;
            case "e":
                break generate
            }
            h[g[j].m].apply(h, g[j].a)
        }
        return g
    }
    function c(m, k) {
        for (var j = 0, h = m.length; j < h; ++j) {
            var g = m[j];
            k[g.m].apply(k, g.a)
        }
    }
    return function (V, w, P, t, C, W) {
        var k = (w === null);
        if (k) {
            w = C.getAttribute("alt")
        }
        var A = V.viewBox;
        var m = P.getSize("fontSize", V.baseSize);
        var B = 0,
            O = 0,
            N = 0,
            u = 0;
        var z = t.textShadow,
            L = [];
        if (z) {
            for (var U = z.length; U--;) {
                var F = z[U];
                var K = m.convertFrom(parseFloat(F.offX));
                var I = m.convertFrom(parseFloat(F.offY));
                L[U] = [K, I];
                if (I < B) {
                    B = I
                }
                if (K > O) {
                    O = K
                }
                if (I > N) {
                    N = I
                }
                if (K < u) {
                    u = K
                }
            }
        }
        var Z = Cufon.CSS.textTransform(w, P).split("");
        var E = V.spacing(Z, ~~m.convertFrom(parseFloat(P.get("letterSpacing")) || 0), ~~m.convertFrom(parseFloat(P.get("wordSpacing")) || 0));
        if (!E.length) {
            return null
        }
        var h = E.total;
        O += A.width - E[E.length - 1];
        u += A.minX;
        var s, n;
        if (k) {
            s = C;
            n = C.firstChild
        } else {
            s = document.createElement("cufon");
            s.className = "cufon cufon-canvas";
            s.setAttribute("alt", w);
            n = document.createElement("canvas");
            s.appendChild(n);
            if (t.printable) {
                var S = document.createElement("cufontext");
                S.appendChild(document.createTextNode(w));
                s.appendChild(S)
            }
        }
        var aa = s.style;
        var H = n.style;
        var j = m.convert(A.height);
        var Y = Math.ceil(j);
        var M = Y / j;
        var G = M * Cufon.CSS.fontStretch(P.get("fontStretch"));
        var J = h * G;
        var Q = Math.ceil(m.convert(J + O - u));
        var o = Math.ceil(m.convert(A.height - B + N));
        n.width = Q;
        n.height = o;
        H.width = Q + "px";
        H.height = o + "px";
        B += A.minY;
        H.top = Math.round(m.convert(B - V.ascent)) + "px";
        H.left = Math.round(m.convert(u)) + "px";
        var r = Math.max(Math.ceil(m.convert(J)), 0) + "px";
        if (a) {
            aa.width = r;
            aa.height = m.convert(V.height) + "px"
        } else {
            aa.paddingLeft = r;
            aa.paddingBottom = (m.convert(V.height) - 1) + "px"
        }
        var X = n.getContext("2d"),
            D = j / A.height;
        X.scale(D, D * M);
        X.translate(-u, -B);
        X.save();

        function T() {
            var x = V.glyphs,
                ab, l = -1,
                g = -1,
                y;
            X.scale(G, 1);
            while (y = Z[++l]) {
                var ab = x[Z[l]] || V.missingGlyph;
                if (!ab) {
                    continue
                }
                if (ab.d) {
                    X.beginPath();
                    if (ab.code) {
                        c(ab.code, X)
                    } else {
                        ab.code = d("m" + ab.d, X)
                    }
                    X.fill()
                }
                X.translate(E[++g], 0)
            }
            X.restore()
        }
        if (z) {
            for (var U = z.length; U--;) {
                var F = z[U];
                X.save();
                X.fillStyle = F.color;
                X.translate.apply(X, L[U]);
                T()
            }
        }
        var q = t.textGradient;
        if (q) {
            var v = q.stops,
                p = X.createLinearGradient(0, A.minY, 0, A.maxY);
            for (var U = 0, R = v.length; U < R; ++U) {
                p.addColorStop.apply(p, v[U])
            }
            X.fillStyle = p
        } else {
            X.fillStyle = P.get("color")
        }
        T();
        return s
    }
})());
Cufon.registerFont({
    "w": 196,
    "face": {
        "font-family": "Tahoma",
        "font-weight": 400,
        "font-stretch": "normal",
        "units-per-em": "360",
        "panose-1": "2 11 6 4 3 5 4 4 2 4",
        "ascent": "288",
        "descent": "-72",
        "x-height": "5",
        "bbox": "-16 -295 333 74.5539",
        "underline-thickness": "22.8516",
        "underline-position": "-18.457",
        "unicode-range": "U+0020-U+007E"
    },
    "glyphs": {
        " ": {
            "w": 112
        },
        "\u00a0": {
            "w": 112
        },
        "!": {
            "d": "79,-262r-4,190r-30,0r-5,-190r39,0xm78,0r-36,0r0,-37r36,0r0,37",
            "w": 119
        },
        "\"": {
            "d": "124,-274r-7,102r-23,0r-8,-102r38,0xm58,-274r-7,102r-23,0r-8,-102r38,0",
            "w": 144
        },
        "#": {
            "d": "237,-164r-52,0r-16,66r47,0r0,24r-53,0r-18,74r-23,0r18,-74r-47,0r-18,74r-23,0r18,-74r-45,0r0,-24r51,0r17,-66r-47,0r0,-24r53,0r18,-74r23,0r-19,74r48,0r18,-74r23,0r-18,74r45,0r0,24xm163,-164r-48,0r-16,67r48,0",
            "w": 261
        },
        "$": {
            "d": "110,-128v38,6,70,19,70,61v0,37,-34,64,-70,67r0,63r-20,0r0,-62v-25,0,-54,-7,-71,-16v2,-11,-3,-28,2,-35v18,13,42,22,69,25r0,-76v-36,-9,-70,-20,-70,-63v0,-38,33,-63,70,-65r0,-48r20,0r0,47v21,0,47,8,62,14r0,34v-19,-8,-37,-20,-62,-22r0,76xm90,-204v-31,-1,-48,36,-29,59v5,6,15,11,29,14r0,-73xm110,-26v34,3,48,-40,28,-61v-5,-6,-15,-9,-28,-12r0,73"
        },
        "%": {
            "d": "80,-267v44,0,62,30,62,78v1,48,-19,78,-62,78v-44,0,-62,-30,-62,-78v-1,-48,18,-78,62,-78xm259,-262r-137,262r-29,0r137,-262r29,0xm272,-150v44,0,61,29,61,77v0,48,-17,78,-61,78v-45,0,-62,-29,-62,-77v0,-48,18,-78,62,-78xm80,-135v28,0,31,-23,31,-54v0,-31,-3,-54,-31,-54v-28,0,-31,23,-31,54v0,32,2,54,31,54xm272,-18v28,0,30,-24,30,-55v0,-31,-2,-54,-30,-54v-28,0,-31,23,-31,55v0,32,2,54,31,54",
            "w": 351
        },
        "&": {
            "d": "210,-160v1,37,-5,69,-19,95r63,65r-45,0r-36,-37v-21,25,-40,41,-79,42v-47,1,-82,-31,-82,-77v0,-41,23,-61,48,-76v-21,-14,-35,-28,-35,-59v0,-38,29,-59,69,-60v36,-1,66,20,66,54v-1,37,-21,54,-50,65r62,64v5,-22,3,-50,3,-76r35,0xm77,-136v-43,21,-38,117,26,113v27,-2,43,-13,55,-30xm93,-245v-37,0,-45,56,-16,72v4,4,10,9,17,13v38,-6,46,-85,-1,-85",
            "w": 242
        },
        "'": {
            "d": "57,-274r-7,102r-24,0r-8,-102r39,0",
            "w": 75,
            "k": {
                "A": 17
            }
        },
        "(": {
            "d": "50,-101v-1,81,36,132,75,173r-40,0v-37,-46,-66,-92,-66,-173v0,-80,28,-127,66,-173v12,2,32,-4,40,2v-41,39,-74,93,-75,171",
            "w": 137,
            "k": {
                "j": -9,
                "T": -4
            }
        },
        ")": {
            "d": "53,-274v36,46,66,94,66,173v0,79,-28,127,-66,173v-13,-1,-29,2,-40,-1v41,-39,75,-94,75,-172v0,-79,-37,-131,-75,-173r40,0",
            "w": 137
        },
        "*": {
            "d": "177,-156r-11,19r-58,-38r1,64r-22,0r1,-64r-57,39r-11,-20r62,-36r-62,-37r11,-19r58,39r-2,-65r22,0r-1,65r58,-39r11,20r-62,36"
        },
        "+": {
            "d": "234,-101r-88,0r0,89r-30,0r0,-89r-88,0r0,-28r88,0r0,-88r30,0r0,88r88,0r0,28",
            "w": 261
        },
        ",": {
            "d": "88,-50r-49,115r-26,0r31,-115r44,0",
            "w": 108,
            "k": {
                "}": 16,
                "]": 16,
                "7": 9,
                ")": 16
            }
        },
        "-": {
            "d": "115,-99r-99,0r0,-31r99,0r0,31",
            "w": 130,
            "k": {
                "z": 7,
                "y": 7,
                "x": 8,
                "w": 3,
                "v": 7,
                "a": 3,
                "Z": 5,
                "Y": 23,
                "X": 13,
                "W": 8,
                "V": 8,
                "T": 25,
                "S": 3,
                "J": 17,
                "I": 5,
                "A": 8
            }
        },
        "\u00ad": {
            "d": "115,-99r-99,0r0,-31r99,0r0,31",
            "w": 130
        },
        ".": {
            "d": "75,0r-42,0r0,-50r42,0r0,50",
            "w": 108,
            "k": {
                "}": 18,
                "]": 18,
                "7": 9,
                "-": 28,
                ",": 23,
                ")": 18
            }
        },
        "\/": {
            "d": "128,-274r-103,331r-29,0r102,-331r30,0",
            "w": 137
        },
        "0": {
            "d": "98,-267v68,0,84,59,84,136v0,80,-17,136,-84,136v-69,0,-82,-57,-83,-136v0,-80,16,-136,83,-136xm98,-24v50,0,48,-55,48,-107v0,-53,1,-107,-48,-107v-49,0,-48,56,-48,107v0,53,-1,107,48,107"
        },
        "1": {
            "d": "40,-226v35,-1,50,-7,54,-37r27,0r0,236r46,0r0,27r-127,0r0,-27r47,0r0,-175r-47,0r0,-24"
        },
        "2": {
            "d": "25,-251v61,-37,172,-8,141,84v-20,59,-78,97,-114,137r129,0r0,30r-162,0r0,-37v17,-17,19,-15,33,-31v33,-37,80,-69,82,-125v2,-62,-80,-44,-109,-21r0,-37"
        },
        "3": {
            "d": "136,-200v0,-57,-85,-34,-112,-14r0,-37v48,-25,147,-26,147,47v0,31,-27,52,-48,61v31,7,53,26,53,65v0,83,-99,100,-159,67r0,-37v18,7,42,24,69,23v34,-2,54,-19,54,-55v0,-41,-28,-49,-70,-47r0,-29v37,3,66,-11,66,-44"
        },
        "4": {
            "d": "188,-90r-32,0r0,90r-33,0r0,-90r-116,0r0,-37r117,-135r32,0r0,144r32,0r0,28xm123,-118r0,-102r-89,102r89,0",
            "k": {
                ".": 4,
                ",": 4
            }
        },
        "5": {
            "d": "66,-161v64,-8,112,13,112,78v0,83,-90,106,-156,74v2,-12,-3,-30,2,-38v36,29,118,35,118,-36v0,-57,-63,-55,-109,-44r0,-135r143,0r0,31r-110,0r0,70"
        },
        "6": {
            "d": "51,-149v50,-38,141,-12,134,64v-5,52,-30,90,-83,90v-66,0,-86,-51,-87,-120v-2,-98,48,-166,147,-148v-2,10,3,27,-2,34v-58,-24,-110,18,-109,80xm102,-23v31,0,47,-24,47,-60v0,-59,-62,-67,-98,-41v-3,51,6,101,51,101"
        },
        "7": {
            "d": "184,-223r-114,223r-37,0r120,-231r-136,0r0,-31r167,0r0,39",
            "k": {
                ".": 26,
                ",": 26
            }
        },
        "8": {
            "d": "116,-148v37,-19,38,-94,-18,-94v-46,0,-59,61,-19,77v8,4,26,15,37,17xm99,-20v40,0,60,-43,42,-75v-9,-16,-40,-28,-63,-36v-44,21,-37,111,21,111xm184,-73v0,44,-40,80,-86,79v-51,-1,-82,-29,-85,-78v-1,-34,22,-55,44,-69v-23,-14,-38,-27,-38,-58v0,-40,37,-69,79,-69v45,0,78,26,79,67v0,30,-20,51,-40,63v27,13,46,28,47,65"
        },
        "9": {
            "d": "47,-178v0,59,65,67,99,40v1,-52,-4,-100,-51,-100v-31,0,-48,24,-48,60xm145,-113v-50,40,-139,13,-133,-64v4,-54,30,-90,83,-90v66,0,86,51,87,120v1,96,-46,169,-148,148v2,-10,-3,-27,2,-33v58,24,111,-18,109,-81"
        },
        ":": {
            "d": "85,-146r-42,0r0,-50r42,0r0,50xm85,0r-42,0r0,-50r42,0r0,50",
            "w": 127
        },
        ";": {
            "d": "85,-146r-42,0r0,-50r42,0r0,50xm96,-50r-49,115r-26,0r31,-115r44,0",
            "w": 127
        },
        "\u037e": {
            "d": "85,-146r-42,0r0,-50r42,0r0,50xm96,-50r-49,115r-26,0r31,-115r44,0",
            "w": 127
        },
        "<": {
            "d": "224,-14r-189,-90r0,-21r189,-90r0,31r-146,69r146,70r0,31",
            "w": 261
        },
        "=": {
            "d": "228,-137r-194,0r0,-29r194,0r0,29xm228,-64r-194,0r0,-28r194,0r0,28",
            "w": 261
        },
        ">": {
            "d": "227,-104r-189,90r0,-31r146,-70r-146,-69r0,-31r189,90r0,21",
            "w": 261
        },
        "?": {
            "d": "19,-255v54,-23,145,-15,141,55v-3,51,-36,69,-68,90r0,40r-31,0r0,-54v28,-19,62,-31,63,-74v1,-55,-77,-40,-105,-21r0,-36xm95,0r-36,0r0,-37r36,0r0,37",
            "w": 170
        },
        "@": {
            "d": "168,-267v122,0,172,148,112,239r-74,0r-5,-20v-41,46,-120,11,-110,-63v-5,-65,57,-108,110,-76r0,-8r28,0r0,148r40,0v34,-84,-1,-196,-101,-196v-69,0,-120,61,-120,130v0,97,84,154,179,121r0,25v-112,31,-204,-38,-204,-147v0,-82,65,-153,145,-153xm160,-53v16,0,30,-10,41,-19r0,-91v-39,-22,-80,-2,-80,52v0,34,9,58,39,58",
            "w": 327
        },
        "A": {
            "d": "-2,0r88,-262r43,0r89,262r-37,0r-24,-73r-100,0r-24,73r-35,0xm147,-103r-40,-123r-40,123r80,0",
            "w": 215,
            "k": {
                "y": 5,
                "w": 2,
                "v": 5,
                "u": 2,
                "t": 2,
                "Y": 13,
                "W": 8,
                "V": 10,
                "U": 2,
                "T": 20,
                "S": 1,
                "-": 8
            }
        },
        "B": {
            "d": "155,-145v29,8,49,29,49,65v-1,85,-89,82,-177,80r0,-262v75,1,163,-14,165,59v1,29,-21,44,-37,58xm61,-155v48,1,97,5,95,-43v-1,-42,-51,-33,-95,-34r0,77xm61,-30v54,1,107,3,107,-49v0,-55,-54,-47,-107,-47r0,96",
            "w": 212,
            "k": {
                "w": -2,
                "u": -2,
                "r": -2,
                "o": -2,
                "l": -2,
                "j": -2,
                "i": -2,
                "h": -2,
                "e": -2,
                "a": -2,
                "T": 10,
                "Q": -2,
                "O": -2,
                "G": -2,
                "C": -2,
                ".": 3,
                "-": -2,
                ",": 3
            }
        },
        "C": {
            "d": "210,-18v-23,11,-45,23,-81,23v-79,0,-117,-53,-117,-136v1,-82,38,-132,117,-135v36,-1,59,10,81,22r0,42v-22,-14,-43,-36,-81,-35v-57,2,-80,46,-81,106v0,62,25,103,81,106v37,2,60,-19,81,-34r0,41",
            "w": 216,
            "k": {
                "-": 8
            }
        },
        "D": {
            "d": "27,-262v123,-8,209,18,206,131v-2,85,-51,135,-146,131r-60,0r0,-262xm61,-30v84,5,136,-20,136,-101v0,-79,-51,-107,-136,-101r0,202",
            "w": 244,
            "k": {
                "Z": 3,
                "Y": 3,
                "X": 2,
                "W": 3,
                "T": 8,
                "J": 4,
                ".": 8,
                ",": 8
            }
        },
        "E": {
            "d": "27,0r0,-262r163,0r0,31r-129,0r0,72r120,0r0,31r-120,0r0,97r129,0r0,31r-163,0",
            "w": 201
        },
        "F": {
            "d": "183,-231r-122,0r0,74r117,0r0,31r-117,0r0,126r-34,0r0,-262r156,0r0,31",
            "w": 187,
            "k": {
                "o": 8,
                "e": 8,
                "a": 17,
                "T": -5,
                "J": 10,
                "A": 17,
                "?": -10,
                ";": 10,
                ":": 10,
                ".": 50,
                ",": 50
            }
        },
        "G": {
            "d": "223,-17v-26,9,-52,22,-87,22v-84,-1,-124,-51,-124,-136v0,-84,42,-133,124,-135v36,-2,62,11,86,22r0,42v-25,-15,-47,-34,-90,-34v-53,0,-84,46,-84,104v0,86,63,125,141,99r0,-68r-61,0r0,-31r95,0r0,115",
            "w": 240
        },
        "H": {
            "d": "217,0r-35,0r0,-128r-121,0r0,128r-34,0r0,-262r34,0r0,103r121,0r0,-103r35,0r0,262",
            "w": 243
        },
        "I": {
            "d": "118,0r-102,0r0,-27r34,0r0,-208r-34,0r0,-27r102,0r0,27r-33,0r0,208r33,0r0,27",
            "w": 134,
            "k": {
                "v": 5,
                "s": 4,
                "r": 2,
                "p": 2,
                "o": 4,
                "n": 2,
                "m": 2,
                "g": 4,
                "e": 4,
                "d": 4,
                "c": 4,
                "a": 4,
                "-": 5
            }
        },
        "J": {
            "d": "2,-35v40,16,88,14,88,-46r0,-153r-55,0r0,-28r90,0r0,194v2,65,-61,81,-123,67r0,-34",
            "w": 149,
            "k": {
                "A": 2,
                ".": 3,
                ",": 3
            }
        },
        "K": {
            "d": "217,0r-45,0r-95,-122r-16,17r0,105r-34,0r0,-262r34,0r0,121r108,-121r42,0r-108,117",
            "w": 211,
            "k": {
                "y": 10,
                "w": 10,
                "v": 10,
                "u": 7,
                "o": 10,
                "e": 10,
                "a": 8,
                "O": 3,
                "-": 18
            }
        },
        "L": {
            "d": "178,0r-151,0r0,-262r34,0r0,231r117,0r0,31",
            "w": 179,
            "k": {
                "y": 18,
                "v": 18,
                "Y": 27,
                "W": 17,
                "V": 18,
                "T": 28,
                "Q": 3,
                "O": 3,
                "J": -17,
                "G": 3,
                "C": 3,
                "A": 7,
                "-": 27,
                "'": 20
            }
        },
        "M": {
            "d": "251,0r-35,0r0,-226r-68,154r-21,0r-68,-154r0,226r-32,0r0,-262r47,0r65,146r63,-146r49,0r0,262",
            "w": 277
        },
        "N": {
            "d": "214,0r-39,0r-116,-226r0,226r-32,0r0,-262r49,0r105,208r0,-208r33,0r0,262",
            "w": 240
        },
        "O": {
            "d": "127,-267v80,0,116,54,116,136v0,81,-36,136,-116,136v-80,0,-115,-55,-115,-136v0,-82,35,-136,115,-136xm127,-25v55,0,80,-45,80,-106v-1,-60,-22,-106,-80,-106v-59,0,-78,45,-79,106v-1,61,24,106,79,106",
            "w": 254,
            "k": {
                "Z": 3,
                "Y": 3,
                "X": 2,
                "T": 8,
                "J": 1,
                ".": 5,
                ",": 5
            }
        },
        "P": {
            "d": "27,-262v84,-3,167,-2,165,79v-2,68,-53,91,-131,85r0,98r-34,0r0,-262xm61,-127v53,3,95,-5,95,-55v0,-48,-43,-53,-95,-50r0,105",
            "w": 198,
            "k": {
                "o": 8,
                "e": 8,
                "a": 8,
                "Y": -3,
                "J": 12,
                "A": 8,
                ".": 50,
                ",": 50
            }
        },
        "Q": {
            "d": "244,64v-52,16,-110,-4,-109,-59v-86,2,-123,-52,-123,-136v0,-82,35,-136,115,-136v80,0,115,54,116,136v0,65,-27,112,-74,129v-3,43,40,45,75,34r0,32xm127,-24v54,0,80,-46,80,-107v-1,-60,-22,-106,-80,-106v-59,0,-78,45,-79,106v-1,62,25,107,79,107",
            "w": 254,
            "k": {
                ".": 5,
                ",": 5
            }
        },
        "R": {
            "d": "190,-191v1,41,-23,66,-54,77r93,114r-45,0r-83,-104r-40,0r0,104r-34,0r0,-262v80,-1,164,-8,163,71xm61,-133v53,3,93,-4,93,-55v0,-46,-46,-46,-93,-44r0,99",
            "w": 223,
            "k": {
                "y": 8,
                "u": 2,
                "o": 7,
                "e": 7,
                "a": 3,
                "Y": 3,
                "T": 10,
                "-": 17
            }
        },
        "S": {
            "d": "140,-141v89,27,51,146,-41,146v-38,0,-60,-9,-85,-21v2,-13,-4,-34,2,-43v27,35,139,57,139,-10v0,-78,-140,-19,-140,-123v0,-75,108,-90,166,-58v-2,13,4,33,-2,42v-25,-31,-124,-46,-127,13v-2,46,54,44,88,54",
            "w": 200,
            "k": {
                "y": 5,
                "w": 3,
                "v": 5,
                "q": -1,
                "o": -1,
                "e": -1,
                "c": -1,
                "S": 4,
                "A": 2,
                ".": 3,
                ",": 3
            }
        },
        "T": {
            "d": "88,0r0,-231r-88,0r0,-31r210,0r0,31r-87,0r0,231r-35,0",
            "w": 210,
            "k": {
                "}": -4,
                "z": 28,
                "y": 33,
                "w": 33,
                "v": 33,
                "u": 33,
                "s": 30,
                "r": 33,
                "o": 37,
                "g": 35,
                "e": 37,
                "c": 37,
                "a": 40,
                "]": -4,
                "Y": 12,
                "T": 18,
                "S": 2,
                "O": 8,
                "J": 10,
                "G": 7,
                "C": 7,
                "A": 20,
                "?": -10,
                ";": 33,
                ":": 33,
                ".": 49,
                "-": 25,
                ",": 49,
                ")": -4
            }
        },
        "U": {
            "d": "213,-262v-6,115,33,273,-95,267v-65,-3,-96,-35,-95,-103r0,-164r35,0r0,164v-2,47,16,74,60,74v43,0,60,-27,60,-74r0,-164r35,0",
            "w": 236,
            "k": {
                "A": 2,
                ".": 3,
                ",": 3
            }
        },
        "V": {
            "d": "216,-262r-90,262r-37,0r-90,-262r37,0r72,218r73,-218r35,0",
            "w": 214,
            "k": {
                "y": 11,
                "u": 10,
                "o": 17,
                "e": 17,
                "a": 17,
                "A": 10,
                ";": 13,
                ":": 13,
                ".": 49,
                "-": 8,
                ",": 49
            }
        },
        "W": {
            "d": "320,-262r-66,262r-39,0r-53,-217r-52,217r-38,0r-67,-262r35,0r53,218r52,-218r36,0r53,220r52,-220r34,0",
            "w": 324,
            "k": {
                "y": 9,
                "u": 7,
                "r": 7,
                "o": 13,
                "e": 13,
                "a": 13,
                "A": 8,
                ";": 13,
                ":": 13,
                ".": 37,
                "-": 8,
                ",": 49
            }
        },
        "X": {
            "d": "208,0r-40,0r-64,-105r-65,105r-38,0r84,-131r-81,-131r40,0r62,103r64,-103r37,0r-81,129",
            "w": 209,
            "k": {
                "y": 12,
                "u": 5,
                "o": 8,
                "e": 8,
                "a": 7,
                "O": 2,
                "G": 2,
                "C": 2,
                "-": 13
            }
        },
        "Y": {
            "d": "210,-262r-89,146r0,116r-35,0r0,-112r-88,-150r39,0r67,116r69,-116r37,0",
            "w": 207,
            "k": {
                "v": 17,
                "u": 18,
                "s": 18,
                "r": 17,
                "q": 22,
                "p": 17,
                "o": 22,
                "n": 17,
                "m": 17,
                "g": 22,
                "e": 22,
                "d": 20,
                "a": 23,
                "O": 3,
                "J": 10,
                "A": 13,
                ";": 33,
                ":": 33,
                ".": 49,
                "-": 23,
                ",": 49
            }
        },
        "Z": {
            "d": "193,0r-182,0r0,-32r140,-199r-134,0r0,-31r173,0r0,32r-142,199r145,0r0,31",
            "w": 201,
            "k": {
                "y": 11,
                "w": 7,
                "o": 10,
                "e": 10,
                "a": 8,
                "Z": 2,
                "O": 3,
                "G": 3,
                "C": 3,
                "-": 10
            }
        },
        "[": {
            "d": "121,69r-92,0r0,-343r92,0r0,26r-61,0r0,292r61,0r0,25",
            "w": 137,
            "k": {
                "j": -9,
                "T": -4
            }
        },
        "\\": {
            "d": "141,57r-29,0r-103,-331r30,0",
            "w": 137
        },
        "]": {
            "d": "109,69r-92,0r0,-25r61,0r0,-292r-61,0r0,-26r92,0r0,343",
            "w": 137
        },
        "^": {
            "d": "239,-120r-35,0r-73,-110r-73,110r-35,0r97,-142r22,0",
            "w": 261
        },
        "_": {
            "d": "199,53r-202,0r0,-23r202,0r0,23"
        },
        "`": {
            "d": "118,-229r-26,0r-48,-66r42,0"
        },
        "a": {
            "d": "44,-59v0,49,71,36,90,11r0,-55v-38,5,-89,3,-90,44xm26,-192v56,-17,140,-17,140,58r0,134r-32,0r0,-21v-19,12,-31,27,-64,26v-37,-1,-60,-25,-60,-62v0,-63,62,-69,124,-72v5,-60,-69,-43,-108,-30r0,-33",
            "w": 188,
            "k": {
                "y": 2,
                "w": 2,
                "v": 2
            }
        },
        "b": {
            "d": "57,-36v47,28,103,3,98,-63v-3,-41,-9,-70,-46,-71v-21,0,-39,11,-52,22r0,112xm117,-202v49,0,72,47,72,101v0,78,-69,133,-132,92r-2,9r-31,0r0,-274r33,0r0,98v15,-14,34,-26,60,-26",
            "w": 198,
            "k": {
                "y": 1,
                ".": 3,
                ",": 5
            }
        },
        "c": {
            "d": "101,-24v26,0,42,-14,59,-24r0,37v-19,6,-33,16,-58,15v-62,-1,-89,-39,-92,-102v-5,-87,81,-125,150,-88v-2,11,3,29,-2,37v-14,-11,-32,-23,-57,-23v-38,0,-56,31,-56,74v0,42,18,73,56,74",
            "w": 166,
            "k": {
                "c": 1,
                "T": 17,
                "-": 3
            }
        },
        "d": {
            "d": "10,-97v-4,-78,67,-131,132,-91r0,-86r33,0r0,274r-33,0r0,-20v-16,13,-30,26,-59,25v-54,-2,-70,-46,-73,-102xm91,-26v21,0,38,-11,51,-22r0,-113v-48,-27,-103,1,-98,64v3,40,10,71,47,71",
            "w": 198
        },
        "e": {
            "d": "176,-12v-18,8,-40,17,-67,17v-63,0,-99,-39,-99,-102v0,-59,35,-104,91,-105v61,0,82,42,79,107r-136,0v-8,80,90,83,132,47r0,36xm148,-120v9,-63,-82,-72,-99,-22v-3,6,-4,14,-5,22r104,0",
            "w": 189,
            "k": {
                "T": 23
            }
        },
        "f": {
            "d": "27,-196v-5,-65,40,-89,100,-76v-1,9,2,23,-1,30v-35,-10,-76,-3,-67,46r55,0r0,27r-54,0r0,169r-33,0r0,-169r-22,0r0,-27r22,0",
            "w": 114,
            "k": {
                "}": -18,
                "y": 4,
                "u": 4,
                "s": 4,
                "r": 2,
                "q": 2,
                "p": 2,
                "o": 4,
                "n": 2,
                "m": 2,
                "j": 4,
                "g": 2,
                "f": 2,
                "e": 4,
                "c": 4,
                "a": 4,
                "]": -18,
                "\\": -17,
                "?": -20,
                ".": 26,
                "-": 12,
                ",": 26,
                "*": -12,
                ")": -18,
                "'": -15,
                "\"": -15
            }
        },
        "g": {
            "d": "91,-34v20,0,39,-8,51,-19r0,-108v-45,-27,-103,-2,-98,60v3,40,10,67,47,67xm175,-22v8,88,-71,111,-146,88v2,-11,-3,-28,2,-35v38,20,121,25,111,-40r0,-17v-17,14,-30,22,-58,23v-50,0,-74,-42,-74,-97v0,-77,68,-126,132,-88r2,-8r31,0r0,174",
            "w": 198,
            "k": {
                "j": -2
            }
        },
        "h": {
            "d": "117,-202v85,-1,56,120,61,202r-33,0r0,-112v0,-33,-2,-61,-37,-58v-20,1,-38,12,-51,23r0,147r-33,0r0,-274r33,0r0,99v17,-15,33,-26,60,-27",
            "w": 200,
            "k": {
                "y": 3,
                "w": 2,
                "v": 3
            }
        },
        "i": {
            "d": "58,0r-33,0r0,-196r33,0r0,196xm60,-229r-38,0r0,-34r38,0r0,34",
            "w": 82,
            "k": {
                "t": -1,
                "f": -1
            }
        },
        "j": {
            "d": "-16,43v41,8,60,-7,60,-51r0,-161r-35,0r0,-27r69,0r0,202v2,52,-39,77,-94,66r0,-29xm78,-229r-38,0r0,-34r38,0r0,34",
            "w": 101
        },
        "k": {
            "d": "187,0r-44,0r-73,-95r-13,13r0,82r-33,0r0,-274r33,0r0,161r78,-83r41,0r-81,82",
            "w": 179,
            "k": {
                "o": 3,
                "e": 3,
                "-": 17
            }
        },
        "l": {
            "d": "58,0r-33,0r0,-274r33,0r0,274",
            "w": 82,
            "k": {
                "t": -1,
                "l": -1
            }
        },
        "m": {
            "d": "222,-202v85,0,52,122,58,202r-33,0r0,-114v0,-31,-1,-58,-33,-56v-19,1,-33,12,-46,24r0,146r-33,0r0,-114v0,-31,0,-59,-33,-56v-18,1,-34,12,-45,23r0,147r-33,0r0,-196r33,0r0,21v23,-33,92,-39,105,7v18,-18,31,-34,60,-34",
            "w": 302,
            "k": {
                "y": 3,
                "w": 2,
                "v": 3
            }
        },
        "n": {
            "d": "117,-202v85,-1,56,120,61,202r-33,0r0,-112v0,-33,-2,-61,-37,-58v-20,1,-38,12,-51,23r0,147r-33,0r0,-196r33,0r0,21v17,-15,33,-26,60,-27",
            "w": 200,
            "k": {
                "y": 3,
                "w": 2,
                "v": 3
            }
        },
        "o": {
            "d": "98,-202v56,0,87,42,87,104v0,62,-31,103,-87,103v-57,1,-88,-43,-88,-103v0,-61,32,-104,88,-104xm98,-23v39,0,53,-31,53,-75v0,-44,-13,-75,-53,-75v-40,0,-54,30,-54,75v0,44,15,75,54,75",
            "w": 195,
            "k": {
                "y": 2,
                "x": 3,
                "v": 2,
                ".": 3,
                ",": 5
            }
        },
        "p": {
            "d": "117,-202v48,0,72,45,72,99v0,79,-68,134,-132,93r0,82r-33,0r0,-268r33,0r0,20v15,-13,34,-26,60,-26xm57,-37v47,28,102,0,98,-63v-3,-39,-9,-69,-46,-70v-21,0,-39,10,-52,22r0,111",
            "w": 198,
            "k": {
                "y": 1,
                ".": 3,
                ",": 5
            }
        },
        "q": {
            "d": "10,-98v0,-78,67,-128,132,-90r2,-8r31,0r0,268r-33,0r0,-93v-17,15,-31,25,-59,25v-50,0,-73,-46,-73,-102xm91,-28v20,0,39,-11,51,-21r0,-112v-46,-28,-102,-1,-98,62v3,40,11,70,47,71",
            "w": 198
        },
        "r": {
            "d": "57,-167v21,-19,37,-32,71,-28v-2,17,10,41,-20,33v-23,0,-38,10,-51,23r0,139r-33,0r0,-196r33,0r0,29",
            "w": 129,
            "k": {
                "q": 2,
                "o": 2,
                "g": 2,
                "e": 2,
                "d": 2,
                "c": 2,
                "a": 6,
                ".": 49,
                "-": 4,
                ",": 49
            }
        },
        "s": {
            "d": "143,-91v30,44,-8,96,-66,96v-25,0,-48,-10,-65,-17v2,-11,-3,-29,2,-37v14,13,37,24,64,26v30,2,54,-22,36,-47v-33,-20,-101,-12,-101,-71v0,-62,88,-72,134,-46v-2,11,3,28,-2,35v-24,-30,-124,-28,-92,25v21,16,75,14,90,36",
            "w": 160
        },
        "t": {
            "d": "120,-2v-48,16,-94,-1,-94,-58r0,-109r-22,0r0,-27r22,0r0,-57r33,0r0,57r61,0r0,27r-61,0r1,116v-2,32,36,31,60,22r0,29",
            "w": 120,
            "k": {
                "y": 4,
                "v": 4,
                "t": 3,
                "-": 7
            }
        },
        "u": {
            "d": "93,-26v20,0,38,-13,51,-24r0,-146r33,0r0,196r-33,0r0,-22v-36,46,-122,32,-122,-47r0,-127r34,0r0,111v-1,35,3,59,37,59",
            "w": 200
        },
        "v": {
            "d": "178,-196r-74,196r-29,0r-74,-196r36,0r54,151r53,-151r34,0",
            "w": 179,
            "k": {
                "o": 3,
                "e": 3,
                "a": 7,
                ".": 30,
                "-": 7,
                ",": 30
            }
        },
        "w": {
            "d": "262,-196r-50,196r-30,0r-48,-151r-48,151r-30,0r-51,-196r35,0r34,152r47,-152r27,0r48,152r33,-152r33,0",
            "w": 267,
            "k": {
                "a": 3,
                ".": 12,
                "-": 3,
                ",": 12
            }
        },
        "x": {
            "d": "176,0r-40,0r-48,-74r-49,74r-37,0r68,-97r-68,-99r41,0r47,73r49,-73r37,0r-67,96",
            "w": 178,
            "k": {
                "o": 4,
                "g": 2,
                "e": 4,
                "d": 2,
                "c": 3,
                "-": 8
            }
        },
        "y": {
            "d": "178,-196r-105,268r-36,0r35,-81r-71,-187r36,0r53,145r54,-145r34,0",
            "w": 179,
            "k": {
                "q": 2,
                "o": 3,
                "g": 2,
                "e": 3,
                "d": 2,
                "c": 3,
                "a": 7,
                ".": 32,
                "-": 7,
                ",": 32
            }
        },
        "z": {
            "d": "153,0r-144,0r0,-24r102,-145r-98,0r0,-27r138,0r0,23r-103,145r105,0r0,28",
            "w": 159,
            "k": {
                "q": 2,
                "o": 2,
                "g": 2,
                "e": 2,
                "d": 2,
                "c": 2,
                "-": 3
            }
        },
        "{": {
            "d": "100,-33v0,49,2,86,56,78r0,24v-66,6,-93,-26,-88,-94v3,-40,-16,-65,-57,-64r0,-27v52,3,59,-37,57,-89v-2,-51,33,-74,88,-69r0,25v-52,-7,-56,25,-56,77v0,38,-22,55,-48,68r0,4v27,12,48,30,48,67",
            "w": 172,
            "k": {
                "j": -9,
                "T": -4
            }
        },
        "|": {
            "d": "83,69r-29,0r0,-343r29,0r0,343",
            "w": 137
        },
        "}": {
            "d": "105,-205v-2,52,4,93,57,89r0,27v-51,-2,-59,37,-57,90v2,51,-33,73,-88,68r0,-24v52,7,56,-25,56,-78v0,-38,20,-56,48,-67r0,-4v-35,-14,-53,-44,-48,-98v3,-38,-18,-50,-56,-47r0,-25v55,-5,89,18,88,69",
            "w": 172
        },
        "~": {
            "d": "177,-98v29,-2,30,-34,32,-65r29,0v-1,49,-13,91,-60,93v-54,2,-51,-55,-93,-65v-29,2,-30,35,-32,66r-29,0v1,-49,13,-93,60,-94v52,-2,51,55,93,65",
            "w": 261
        }
    }
});